

curve {base}                                 R Documentation

_D_r_a_w _F_u_n_c_t_i_o_n _P_l_o_t_s

_D_e_s_c_r_i_p_t_i_o_n_:

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

_U_s_a_g_e_:

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

_A_r_g_u_m_e_n_t_s_:

    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 evalu-
          ate.

     add: logical; if `TRUE' add to already existing plot.

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

_D_e_t_a_i_l_s_:

     The evaluation of `expr' is at `n' points equally
     spaced over the range `[from, to]'.  The points deter-
     mined 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.

_V_a_l_u_e_:

     `NULL'. For ``expensive'' `expr'essions, you should use
     smarter tools.

_S_e_e _A_l_s_o_:

     `splinefun' for spline interpolation, `lines'.

_E_x_a_m_p_l_e_s_:

     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))

