panel.functions {lattice}R Documentation

Useful Panel Functions


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


panel.abline(a, b = NULL, h = numeric(0), v = numeric(0),
             col, col.line, lty, lwd, ...)

panel.curve(expr, from, to, n = 101,
            curve.type = "l",
            col = add.line$col,
            lty = add.line$lty,
            lwd = add.line$lwd,
            type = NULL,
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 = add.line$col,
          lty = add.line$lty,
          lwd = add.line$lwd,
          alpha = add.line$alpha,
panel.linejoin(x, y, fun = mean, horizontal = TRUE, lwd = reference.line$lwd, 
    lty = reference.line$lty, col, col.line = reference.line$col, 

panel.fill(col, ...)
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, ...)
panel.mathdensity(dmath = dnorm, args = list(mean=0, sd=1),
                  n = 50, col, col.line, lwd, lty, ...)


x, y variables defining the contents of the panel
a, b Coefficients of the line to be added. 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 a suitable ‘regression’ object, i.e., an object which has a coef method that returns a length 2 numeric vector. The corresponding line will be plotted.
h, v For panel.abline, numerical vectors giving locations respectively of horizontal and vertical lines to be added to the plot, in native coordinates. For panel.grid, number of horizontal and vertical reference lines to be added to the plot; h=-1 and v=-1 make the grids aligned with the axis labels (but this does not always work).
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, type, alpha graphical parameters
span, degree, family, evaluation arguments to loess.smooth, around 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.


panel.abline adds a line of the form y=a+bx or vertical and/or horizontal lines. Graphical parameters are obtained from reference.line for panel.grid, and add.line for the others (can be set using trellis.par.set )

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


Deepayan Sarkar

See Also

loess.smooth, panel.axis, panel.identify identify, trellis.par.get

[Package lattice version 0.12-11 Index]