Last chance! 50% off unlimited learning
Sale ends in
These panel functions for levelplot
can represent irregular (x, y) points with a color covariate.
panel.levelplot.points
simply draws color-coded points.
panel.voronoi
uses the deldir package to
calculate the spatial extension of a set of points in 2 dimensions.
This is known variously as a Voronoi mosaic, a Dirichlet tesselation,
or Thiessen polygons.
panel.voronoi(x, y, z, subscripts = TRUE, at = pretty(z),
points = TRUE, border = "transparent",
na.rm = FALSE, win.expand = 0.07, use.tripack = FALSE,
...,
col.regions = regions$col, alpha.regions = regions$alpha)panel.levelplot.points(x, y, z, subscripts = TRUE, at = pretty(z),
shrink, labels, label.style, contour, region,
pch = 21, col.symbol = "#00000044",
...,
col.regions = regions$col, fill = NULL)
an irregular set of points at locations (x, y) with value z.
integer vector indicating what subset of x, y and z
to draw. Typically passed by levelplot
.
color scale definition;
see panel.levelplot
.
whether to draw the (x, y) points.
color for polygon borders.
if TRUE
, points with missing z
values will
be excluded from the calculation of polygons. If FALSE
,
those polygons are calculated but are not drawn (i.e. are
transparent).
defines the rectangular window bounding the
polygons. This is a factor by which
to expand the range of the data. Set to 0 to limit drawing at the
furthest data point locations. Ignored if use.tripack = TRUE
.
if TRUE
, use tripack package rather
than deldir. See Details.
further arguments are
passed to panel.xyplot
if points =
TRUE
.
symbol and border color for points. A filled symbol should be used, i.e. in the range 21-25.
ignored.
The tripack package implementation is faster than deldir but not under a
fully free licence. Also, the deldir package allows polygons to
be clipped to a rectangular window (the win.expand
argument).
# NOT RUN {
## a variant of Figure 5.6 from Sarkar (2008)
## http://lmdvr.r-forge.r-project.org/figures/figures.html?chapter=05;figure=05_06
depth.ord <- rev(order(quakes$depth))
quakes$Magnitude <- equal.count(quakes$mag, 4)
quakes.ordered <- quakes[depth.ord, ]
levelplot(depth ~ long + lat | Magnitude, data = quakes.ordered,
panel = panel.levelplot.points, type = c("p", "g"),
aspect = "iso", prepanel = prepanel.default.xyplot)
## a levelplot with jittered cells
xyz <- expand.grid(x = 0:9, y = 0:9)
xyz[] <- jitter(as.matrix(xyz))
xyz$z <- with(xyz, sqrt((x - 5)^2 + (y - 5)^2))
levelplot(z ~ x * y, xyz, panel = panel.voronoi, points = FALSE)
## hexagonal cells
xyz$y <- xyz$y + c(0, 0.5)
levelplot(z ~ x * y, xyz, panel = panel.voronoi, points = FALSE)
# }
Run the code above in your browser using DataLab