F_2_panel.functions {lattice} | R Documentation |
Useful Panel Function Components
Description
These are predefined panel functions available in lattice for use in constructing new panel functions (often 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,
identifier = "abline")
panel.refline(...)
panel.curve(expr, from, to, n = 101,
curve.type = "l",
col, lty, lwd, type,
...,
identifier = "curve")
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, col.line, lty, lwd, alpha,
...,
identifier = "rug")
panel.average(x, y, fun = mean, horizontal = TRUE,
lwd, lty, col, col.line, type,
...,
identifier = "linejoin")
panel.linejoin(x, y, fun = mean, horizontal = TRUE,
lwd, lty, col, col.line, type,
...,
identifier = "linejoin")
panel.fill(col, border, ..., identifier = "fill")
panel.grid(h=3, v=3, col, col.line, lty, lwd, x, y, ..., identifier = "grid")
panel.lmline(x, y, ..., identifier = "lmline")
panel.mathdensity(dmath = dnorm, args = list(mean=0, sd=1),
n = 50, col, col.line, lwd, lty, type,
..., identifier = "mathdensity")
Arguments
x , y |
Variables defining the contents of the panel.
In |
a , b |
Coefficients of the line to be added by
|
coef |
Coefficients of the line to be added as a vector of length 2. |
reg |
A (linear) regression object, with a |
h , v |
For For If |
reference |
A logical flag determining whether the default
graphical parameters for |
expr |
An expression considered as a function of |
n |
The number of points to use for drawing the curve. |
from , to |
optional lower and upper x-limits of curve. If missing, limits of current panel are used |
curve.type |
Type of curve ( |
regular |
A logical flag 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
|
x.units , y.units |
Character vectors, replicated to be of length two. Specifies the
(grid) units associated with |
col , col.line , lty , lwd , alpha , border |
Graphical parameters. |
type |
Usually ignored by the panel functions documented here;
the argument is present only to make sure an explicitly specified
|
fun |
The function that will be applied to the subset of
|
horizontal |
A logical flag. If |
dmath |
A vectorized function that produces density values given
a numeric vector named |
args |
A list giving additional arguments to be passed to
|
... |
Further arguments, typically graphical parameters,
passed on to other low-level functions as appropriate. Color can
usually be specified by |
identifier |
A character string that is prepended to the names of grobs that are created by this panel function. |
Details
panel.abline
adds a line of the form y = a + b * x
, 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 curve 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.
panel.linejoin
is an alias for panel.average
. It is
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 assess 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
Lattice, panel.axis
, panel.identify
identify
, trellis.par.set
.
Examples
## Interaction Plot
bwplot(yield ~ site, barley, groups = year,
panel = function(x, y, groups, subscripts, ...) {
panel.grid(h = -1, v = 0)
panel.stripplot(x, y, ..., jitter.data = TRUE, grid = FALSE,
groups = groups, subscripts = subscripts)
panel.superpose(x, y, ..., panel.groups = panel.average, grid = FALSE,
groups = groups, subscripts = subscripts)
},
auto.key = list(points = FALSE, lines = TRUE, columns = 2))
## Superposing a fitted normal density on a Histogram
histogram( ~ height | voice.part, data = singer, layout = c(2, 4),
type = "density", border = "transparent", col.line = "grey60",
xlab = "Height (inches)",
ylab = "Density Histogram\n with Normal Fit",
panel = function(x, ...) {
panel.histogram(x, ...)
panel.mathdensity(dmath = dnorm,
args = list(mean = mean(x), sd = sd(x)), ...)
} )