[R-sig-Geo] Question on ssplot key
Kenneth Takagi
katakagi at bu.edu
Thu Jun 24 20:15:45 CEST 2010
Hi All,
I have a question about producing keys in ssplot(). I've included
reproducible code below. Here goes:
I'd like to produce a key in ssplot that has both rectangles, points and
lines. Unfortunately, when you include all of these symbols in one key,
the produce a "staggered" look with rectangles on the far left and lines
closest to the labels (run script below to see what I am talking about).
Questions:
1. How can you have them all line up in a single column?
I tried using negative values for "size" of rectangles, but that begins
to change the size of the grey background box.
2. key.space does not seem to change anything when used inside the
update function. Any suggestions on how to move the key?
Thanks!
-Ken
# Reproducible Script:
library(sp)
library(lattice) # required for trellis.par.set():
trellis.par.set(sp.theme()) # sets color ramp to bpy.colors()
data(meuse)
coordinates(meuse)=~x+y
data(meuse.riv)
meuse.sr =
SpatialPolygons(list(Polygons(list(Polygon(meuse.riv)),"meuse.riv")))
# Create spplot
plot1 = spplot(meuse, "zinc", auto.key=F, panel = function(x, y, ...) {
sp.polygons(meuse.sr, fill = "lightblue")
panel.pointsplot(x, y, auto.key = F, ...)
},
main = "Top soil zinc concentration (ppm)"
)
#Update spplot
plot.update <- update(plot1,
key = list(rep = F, between.row = 0.75, between = 0.8, background="grey90",
key.space = list(x = 0.1, y = 0.93, corner = c(1,0)),
rectangle = list(col = c(rep(NA, 3), rep("magenta", 4)),
border = c(rep(NA, 3),rep("black", 4)),
size = 1.8, lwd = 7),
points = list(pch = c(NA, seq(1, 2,1), rep(NA, 4)),
col = c(NA, rep("black", 2), rep(NA, 4))),
lines = list(type = "l", size = 2, lwd = 2, lty = 1),
text = list(rep("Some Variable", 7))
))
#Print spplot
print(plot.update)
More information about the R-sig-Geo
mailing list