ScatterPlot在两个栅格之间,从第三个栅格中提供颜色

时间:2014-10-02 07:34:21

标签: r scatter-plot raster

我正在绘制两个栅格数据,生成下面的图像。

我想使用从第三个栅格数据中获取的变量(具有相同的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

非常感谢! plot betwween two raster

1 个答案:

答案 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)

scatterplot