0

我有两个光栅堆栈,每个都有一个共同的图例,我想把它们放在一个图上,堆栈之间有一个空格。我希望光栅图像在每个块内和跨块的大小相同。有没有一种简单的方法可以使用Rastervis::levelplot. 我相信最好的方法是添加一个图例来grid.arrange反对,就像在这个 MWE

library(raster)
library(rasterVis)
s <- stack(
raster( matrix(runif(9),3,3)),
raster( matrix(runif(9),3,3)) )

gridExtra::grid.arrange(
levelplot(s, colorkey=FALSE, at=seq(0,1,length.out=11)),
levelplot(s, at=seq(0,1,length.out=11)),
ncol=2)

一个更简单的解决方案是在单个 levplot 调用中执行此操作

4

1 回答 1

1

我认为你正在寻找做这样的事情:

levObj <- levelplot(s)
comb_levObj <- c(levObj, levObj, layout = c(4, 1), merge.legends = F)
print(comb_levObj)

在此处输入图像描述

但是,更简单的解决方案是:

s <- stack(s,s)
levelplot(s)

在此处输入图像描述

于 2018-04-13T08:01:40.673 回答