结合R语言中的光栅图例

Combining rasters' legends in R language

很抱歉我无法解决这个明显愚蠢的问题,即使在谷歌搜索了一段时间之后也是如此。让我们假设以下情况,我有两个重叠但值等级不同的栅格。

library(raster)
# A couple of rasters from scratch
r2 <- r1 <- raster(nrows=10, ncols=10)
r1[] <- sample(c(0:99), 100, replace = F)
r2[] <- sample(c(50:149), 100, replace = F)
par(mfrow = c(1,2))
plot(r1)
plot(r2)

如何创建相同的图,但只有一个范围从 0 到 149 的图例,即两个栅格的组合等级?

根据我在之前评论中分享的答案,您可以手动设置图例的中断和颜色。然后您只需要将该色带应用于两个图。这是代码和情节。

# Adjust plot margins
par(mar=c(2,2,2,5))

# Set manually the breaks
breaks = seq(0,150,25)
pal <- colorRampPalette(c("white","orange","yellow","green","forestgreen"))

plot(r1, breaks=breaks, col = pal(length(breaks)-1)) 
plot(r2, breaks=breaks, col = pal(length(breaks)-1))