我正在使用rasterVis包制作栅格图,它使用晶格生成图。我正在为某些数据制作水平图,并且图表会根据输入数据集的值自动选择颜色方案。
例如,假设我的数据是(x,y,z)的形式,其中x是数据点的水平位置,y是垂直位置,z代表高程。如果我使用我的数据创建一个级别图,则数据的颜色取决于z。默认情况下,晶格使用z的范围来选择我的绘图的颜色方案。但是,为了使我的绘图与其他数据集相当,我想手动设置颜色的限制。
另一个例子:这是来自rasterVis网站的图片:
默认情况下,最暗的红色是数据中的最低z值,最暗的蓝色是数据中的最高z值。有没有办法手动将颜色方案的限制设置为其他东西,例如c(-3000,3000)?
答案 0 :(得分:4)
生成图像的代码位于:http://rastervis.r-forge.r-project.org/
首先需要先下载两个不同的大型zip文件并更改设置工作目录的代码。
回答这个问题的一种方法是对想要绘制的值进行子集化。
levelplot(Aug-meanAug, par.settings=RdBuTheme,
subset= Aug > -1500 & Aug < 500 )
要生成扩展范围,您需要将绘图规格与颜色键
相匹配rgb.palette <- colorRampPalette(c("red", "orange", "blue"),
space = "rgb")
levelplot(Aug-meanAug, col.regions=rgb.palette(16),
at=seq(-3000, 3000, length=15) , contour=TRUE,
colorkey=list( at=seq(-3000, 3000, length=15),
col=rgb.palette(16) ))