Dear list, I'm using lattice::levelplot to plot a coloured image of 3D data. The range of the z values goes from negative to positive, but is not exactly centred around 0. I would however like to map a diverging colour scale with white falling exactly at 0, and both extremes being symmetrical in the legend to better contrast the opposite change in colour saturation. The following dummy example illustrates my problem,
library(lattice) d <- transform(expand.grid(x=seq(0, 10, length=100), y=seq(0, 10, length=100)), z = sin(x/pi)*cos(0.5*y/pi) - 0.2) levelplot(z~x*y, data=d, panel=panel.levelplot.raster, cuts = 100, interpolate = TRUE) The colour scale goes from -0.3 to 0.9 with a middle (white) value of 0.3 approximately. I'd like it to be from -1 (most saturated blue) to 1 (most saturated pink), say, with 0 being white. I read the entry in ?levelplot and in ?level.colors but could not find a solution to this particular case. Sincerely, baptiste ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.