This help topic is for R version 1.1. For the current version of R, try https://stat.ethz.ch/R-manual/R-patched/library/base/html/curve.html
curve {base}R Documentation

Draw Function Plots

Description

Draws a curve corresponding to the given function or expression (in x) over the interval [from,to].

Usage

curve(expr, from, to, n = 101, add = FALSE, type = "l",
      ylab = NULL, log = NULL, ...)
plot.function(fn, from = 0, to = 1, n = 101, ...)

Arguments

expr

an expression written as a function of x, or alternatively a function which will be plotted.

fn

a ‘vectorizing’ numeric R function.

from, to

the range over which the function will be plotted.

n

integer; the number of x values at which to evaluate.

add

logical; if TRUE add to already existing plot.

...

graphical parameters can also be specified as arguments. plot.function passes all these to curve.

Details

The evaluation of expr is at n points equally spaced over the range [from, to]. The points determined in this way are then joined with straight lines. fn(x) or expr (with x inside) must return a numeric of the same length as x.

This used to be a quick hack which seems to serve a useful purpose, but can give bad results for functions which are not smooth.

Value

NULL. For “expensive” expressions, you should use smarter tools.

See Also

splinefun for spline interpolation, lines.

Examples

par(mfrow=c(2,2))
curve(x^3-3*x, -2, 2)
curve(x^2-2, add = TRUE, col = "violet")

curve(sin, -pi, 3*pi)
plot(cos)
chippy <- function(x) sin(cos(x)*exp(-x/2))
curve(chippy, -8, 7, n=2001)

for(ll in c("","x","y","xy"))
   curve(log(1+x), 1,100, log=ll, sub=paste("log=",ll))

[Package base version 1.1 ]