curve {base} | R Documentation |
Draws a curve corresponding to the given function or expression (in
x
) over the interval [from,to]
.
curve(expr, from, to, n = 101, add = FALSE, type = "l", ylab = NULL, log = NULL, ...) plot.function(fn, from = 0, to = 1, n = 101, ...)
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 . |
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.
NULL
. For ``expensive'' expr
essions, you should use
smarter tools.
splinefun
for spline interpolation, lines
.
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))