[R] levelplot and unequal cell sizes
Waichler, Scott R
Scott.Waichler at pnl.gov
Wed Apr 25 22:55:17 CEST 2007
Hadley and Deepayan,
Thank you for responding. Here is a simple example of what I'm talking
about. It is a grid that is 5 cells wide by 2 cells tall. The width of
the cells in the x-direction is variable; the cells at either end have
width = 4 units, and the three cells in the middle have width = 2 units.
My objective is to have the color contour boundaries fall on the cell
boundaries instead of equidistant between cell nodes. In the plot, I
want the cyan/blue and orange/gray boundaries to be located at the red
cell boundary lines. Also, the colored regions should extend to the
ends of the domain (x = 0, 14).
library(lattice)
x.node <- rep(c(2, 5, 7, 9, 12), 2)
y.node <- c(rep(0.5, 5), rep(1.5, 5))
z <- rep(1:5, 2)
contour.levels <- seq(0.5, 5.5, by=1)
x.cell.boundary <- c(0, 4, 6, 8, 10, 14)
contour.colors <- c("cyan", "blue", "green", "orange", "gray")
print(
levelplot(z ~ x.node * y.node,
panel = function(z,...) {
panel.levelplot(z,...)
panel.abline(v = x.cell.boundary, col="red")
},
xlim = range(x.cell.boundary),
at=contour.levels,
colorkey = list(space="top", width=1, height=0.9,
at=1:5,
col=contour.colors,
labels=list(labels=z, at=z)
),
col.regions=contour.colors,
region = T,
contour = F
)
)
Any help you can offer is appreciated.
Thanks,
Scott Waichler
Pacific Northwest National Laboratory
scott.waichler _at_ pnl.gov
http://hydrology.pnl.gov
More information about the R-help
mailing list