Last chance! 50% off unlimited learning
Sale ends in
print
and plot
methods produce a graph from a
"trellis"
object. The print
method is necessary for
automatic plotting. plot
method is essentially
an alias, provided for convenience. The summary
method
gives a textual summary of the object. dim
and dimnames
describe the cross-tabulation induced by conditioning.
panel.error
is the default handler used when an error occurs
while executing the panel function.## S3 method for class 'trellis':
plot(x, position, split,
more = FALSE, newpage = TRUE,
packet.panel = packet.panel.default,
draw.in = NULL,
panel.height = lattice.getOption("layout.heights")$panel,
panel.width = lattice.getOption("layout.widths")$panel,
save.object = lattice.getOption("save.object"),
panel.error = lattice.getOption("panel.error"),
prefix,
...)
## S3 method for class 'trellis':
print(x, \dots)## S3 method for class 'trellis':
summary(object, \dots)
## S3 method for class 'trellis':
dim(x)
## S3 method for class 'trellis':
dimnames(x)
panel.error(e)
"trellis"
name
argument in
downViewport
) in which the plot is to be drawn. If
specified, the newpage
argument is ignored. This feature is
not well-tested.x
and
units
arguments to unit()
(the data
argument
cannot be specified currently, but can be considered for addition if
needed). The resulting <tryCatch
) and
supplied a"trellis"
object, primarily used in constructing viewport and
grob names, to distinguish similar viewports if a page contains
multiple plots. The default is based ontryCatch
print
method. All arguments
to the plot
method are passed on to the print
method."trellis"
, produced by calls to functions like xyplot
,
bwplot
etc. It is usually called automatically when a trellis
object is produced. It can also be called explicitly to control plot
positioning by means of the arguments split
and
position
. When newpage = FALSE
, the current grid viewport is treated as
the plotting area, making it possible to embed a Lattice plot inside
an arbitrary grid viewport. The draw.in
argument provides an
alternative mechanism that may be simpler to use.
The print method uses the information in x
(the object to be
printed) to produce a display using the Grid graphics engine. At the
heart of the plot is a grid layout, of which the entries of most
interest to the user are the ones containing the display panels.
Unlike in older versions of Lattice (and Grid), the grid display tree
is retained after the plot is produced, making it possible to access
individual viewport locations and make additions to the plot. For
more details and a lattice level interface to these viewports, see
trellis.focus
.
Lattice
, unit
,
update.trellis
, trellis.focus
,
packet.panel.default
p11 <- histogram( ~ height | voice.part, data = singer, xlab="Height")
p12 <- densityplot( ~ height | voice.part, data = singer, xlab = "Height")
p2 <- histogram( ~ height, data = singer, xlab = "Height")
## simple positioning by split
print(p11, split=c(1,1,1,2), more=TRUE)
print(p2, split=c(1,2,1,2))
## Combining split and position:
print(p11, position = c(0,0,.75,.75), split=c(1,1,1,2), more=TRUE)
print(p12, position = c(0,0,.75,.75), split=c(1,2,1,2), more=TRUE)
print(p2, position = c(.5,.75,1,1), more=FALSE)
## Using seekViewport
## repeat same plot, with different polynomial fits in each panel
xyplot(Armed.Forces ~ Year, longley, index.cond = list(rep(1, 6)),
layout = c(3, 2),
panel = function(x, y, ...)
{
panel.xyplot(x, y, ...)
fm <- lm(y ~ poly(x, panel.number()))
llines(x, predict(fm))
})
grid::seekViewport(trellis.vpname("panel", 1, 1))
cat("Click somewhere inside the first panel:\n")
ltext(grid::grid.locator(), lab = "linear")
grid::seekViewport(trellis.vpname("panel", 1, 1))
grid::grid.text("linear")
grid::seekViewport(trellis.vpname("panel", 2, 1))
grid::grid.text("quadratic")
grid::seekViewport(trellis.vpname("panel", 3, 1))
grid::grid.text("cubic")
grid::seekViewport(trellis.vpname("panel", 1, 2))
grid::grid.text("degree 4")
grid::seekViewport(trellis.vpname("panel", 2, 2))
grid::grid.text("degree 5")
grid::seekViewport(trellis.vpname("panel", 3, 2))
grid::grid.text("degree 6")
Run the code above in your browser using DataLab