panel.functions           package:lattice           R Documentation

Useful Panel Functions

Description:

     These are predefined panel functions available in lattice for use
     in constructing new panel functions (usually on-the-fly).

Usage:

     panel.abline(a = NULL, b = 0,
                  h = NULL, v = NULL,
                  reg = NULL, coef = NULL,
                  col, col.line, lty, lwd, alpha, type,
                  ...,
                  reference = FALSE)
     panel.refline(...) 

     panel.curve(expr, from, to, n = 101,
                 curve.type = "l",
                 col, lty, lwd, type,
                 ...)
     panel.rug(x = NULL, y = NULL,
               regular = TRUE, 
               start = if (regular) 0 else 0.97,
               end = if (regular) 0.03 else 1,
               x.units = rep("npc", 2),
               y.units = rep("npc", 2),
               col, lty, lwd, alpha,
               ...)
     panel.average(x, y, fun = mean, horizontal = TRUE,
                   lwd, lty, col, col.line, type,
                   ...)
     panel.linejoin(x, y, fun = mean, horizontal = TRUE,
                    lwd, lty, col, col.line, type,
                    ...)

     panel.fill(col, border, ...)
     panel.grid(h=3, v=3, col, col.line, lty, lwd, ...)
     panel.lmline(x, y, ...)
     panel.loess(x, y, span = 2/3, degree = 1,
                 family = c("symmetric", "gaussian"),
                 evaluation = 50,
                 lwd, lty, col, col.line, type,
                 horizontal = FALSE,
                 ...)
     panel.mathdensity(dmath = dnorm, args = list(mean=0, sd=1),
                       n = 50, col, col.line, lwd, lty, type,
                       ...)

Arguments:

    x, y: variables defining the contents of the panel

    a, b: Coefficients of the line to be added by 'panel.abline'.  'a'
          can be a vector of length 2, representing the coefficients of
          the line to be added, in which case 'b' should be missing. 
          'a' can also be an appropriate 'regression' object, i.e., an
          object which has a 'coef' method that returns a length 2
          numeric vector. The corresponding line will be plotted.  The
          'reg' argument will override 'a' if specified. 

    coef: Coefficients of the line to be added as a length 2 vector

     reg: A regression object. The corresponding fitted line will be
          drawn 

    h, v: For 'panel.abline', these are numeric vectors giving
          locations respectively of horizontal and vertical lines to be
          added to the plot, in native coordinates.  For 'panel.grid',
          these usually specify the number of horizontal and vertical
          reference lines to be added to the plot.  Alternatively, they
          can be negative numbers.  'h=-1' and 'v=-1' are intended to
          make the grids aligned with the axis labels.  This doesn't
          always work; all that actually happens is that the locations
          are chosen using 'pretty', which is also how the label
          positions are chosen in the most common cases (but not for
          factor or date-time variables, for instance).  'h' and 'v'
          can be negative numbers other than '-1', in which case '-h'
          and '-v' (as appropriate) is supplied as the 'n' argument to
          'pretty'. 

reference: logical indicating whether the default graphical parameters
          for 'panel.abline' should be taken from the "reference.line"
          parameter settings.  The default is to take them from the
          "add.line" settings.  The 'panel.refline' function is a
          wrapper around 'panel.abline' that calls it with
          'reference=TRUE'. 

    expr: expression as a function of x or a function to plot as a
          curve 

       n: the number of points to use for drawing the curve 

 regular: logical indicating whether the 'rug' is to be drawn on the
          regular side (left / bottom) or not (right / top) 

start, end: endpoints of rug segments, in normalized parent coordinates
          (between 0 and 1). Defaults depend on value of regular, and
          cover 3% of the panel width and height 

x.units, y.units: character vector, replicated to be of length two. 
          Specifies the (grid) units associated with 'start' and 'end'
          above. 'x.units' and 'y.units' are for the rug on the x-axis
          and y-axis respectively (and thus are associated with 'start'
          and 'end' values on the y and x scales respectively). 

from, to: optional lower and upper x-limits of curve. If missing,
          limits of current panel are used 

curve.type: type of curve ('"p"' for points, etc), passed to 'llines' 

col, col.line, lty, lwd, alpha, border: graphical parameters 

    type: passed on to 'panel.points' by 'panel.average', but is
          usually ignored by the other panel functions documented here.
           In such cases, the argument is present only to make sure an
          explicitly specified 'type' argument (perhaps meant for
          another function) doesn't affect the display. 

span, degree, family, evaluation: arguments to 'loess.smooth', for
          which 'panel.loess' is essentially a wrapper. 

     fun: the function that will be applied to the subset of x(y)
          determined by the unique values of y(x)

horizontal: logical. If FALSE, the plot is 'transposed' in the sense
          that the behaviours of x and y are switched. x is now the
          'factor'.  Interpretation of other arguments change
          accordingly. See documentation of 'bwplot' for a fuller
          explanation. 

   dmath: A vectorized function that produces density values given a
          numeric vector named 'x', e.g., 'dnorm'

    args: list giving additional arguments to be passed to dmath

     ...: graphical parameters can be supplied. see function definition
          for details. Color can usually be specified by 'col',
          'col.line' and 'col.symbol', the last two overriding the
          first for lines and points respectively. 

Details:

     'panel.abline' adds a line of the form 'y=a+bx' or vertical and/or
     horizontal lines.  Graphical parameters are obtained from the
     "add.line" settings by default.  'panel.refline' is similar, but
     uses the "reference.line" settings for the defaults.

     'panel.grid' draws a reference grid.

     'panel.curve' adds a curve, similar to what 'curve' does with 'add
     = TRUE'. Graphical parameters for the line are obtained from the
     'add.line' setting.

     'panel.average' treats one of x and y as a factor (according to
     the value of 'horizontal'), calculates 'fun' applied to the
     subsets of the other variable determined by each unique value of
     the factor, and joins them by a line. Can be used in conjunction
     with 'panel.xyplot' and more commonly with panel.superpose to
     produce interaction plots.  See 'xyplot' documentation for an
     example.  'panel.linejoin' is an alias for 'panel.average'
     retained for back-compatibility and may go away in future.

     'panel.mathdensity' plots a (usually theoretical) probability
     density function.  This can be useful in conjunction with
     'histogram' and 'densityplot' to visually estimate goodness of fit
     (note, however, that 'qqmath' is more suitable for this).

     'panel.rug' adds a _rug_ representation of the (marginal) data to
     the panel, much like 'rug'.

     'panel.lmline(x, y)' is equivalent to 'panel.abline(lm(y~x))'.

Author(s):

     Deepayan Sarkar Deepayan.Sarkar@R-project.org

See Also:

     'loess.smooth', 'panel.axis', 'panel.identify' 'identify',
     'trellis.par.set'

