我正在绘制两个栅格数据,生成下面的图像。
我想使用从第三个栅格数据中获取的变量(具有相同的bbox,像素大小等)为图中的每个点着色。 来自R-Users的任何想法?在绘制数据集中的数据时,此操作非常简单,但我不知道栅格......
在这里,我附上产生图像的代码(简化,我认为你不需要所有的绘图参数,例如abline,xlab等):
plot(mask(raster1, my_mask,maskvalue=0), #first raster, masked by my_mask
mask(raster2, my_mask,maskvalue=0), #second raster, masked by my_mask
col = alpha('black', 0.1), #the current color scheme
)
raster3 #raster with categorical variable,
#that should give the colors to the points in the graph
非常感谢!
答案 0 :(得分:2)
使用xyplot
方法定义
rasterVis
您可以使用RasterStack
的图层,就像它们是a的列一样
data.frame
。因此,它们可以是配方的组成部分
groups
参数。
例如,
library(raster)
library(rasterVis)
f <- system.file("external/test.grd", package="raster")
r <- raster(f)
r2 <- r + 500 * init(r, rnorm)
## categorical variable
r3 <- cut(r, 3)
s <- stack(r, r2, r3)
names(s) <- c('r', 'r2', 'r3')
xyplot(r ~ r2, groups = r3, data = s,
auto.key = list(space = 'right'),
alpha = 1)