panel.functions {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, b = NULL, h = numeric(0), v = numeric(0),
                 col, col.line, lty, lwd, type, ...)

    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.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,
                ...)
    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. `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.
`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, alpha, border` | graphical parameters
`type` | usually ignored. This 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 `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))`.

### Author(s)

Deepayan Sarkar Deepayan.Sarkar@R-project.org

### See Also

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

[Package lattice version 0.13-8 Index]