如何在使用text()绘制整个光栅堆栈时添加光栅值?在绘制单个栅格时,它可以很容易地管理,但我不明白如何才能对整个栅格堆栈执行此操作。
示例数据:
set.seed(123)
library(raster)
r1 <- raster(nrows = 1, ncols = 1, res = 0.5, xmn = -1.5, xmx = 1.5, ymn = -1.5, ymx = 1.5, vals = 0.3)
rr <- lapply(1:10, function(i) setValues(r1,seq(1,ncell(r1),1)))
s <- stack(rr)对于单个栅格,如下所示:
plot(s[[1]])
text(s[[1]])发布于 2019-05-10 15:20:16
示例数据
set.seed(123)
library(raster)
r1 <- raster(nrows = 1, ncols = 1, res = 0.5, xmn = -1.5, xmx = 1.5, ymn = -1.5, ymx = 1.5, vals = 0.3)
rr <- lapply(1:10, function(i) setValues(r1, sample(ncell(r1))))
s <- stack(rr)简单的方法
par(mfrow=c(3,4))
for (i in 1:nlayers(s)) {
plot(s[[i]])
text(s[[i]])
}更花哨,但很棘手。它使用一个全局变量i,每次在plot中使用该变量之前,必须将该变量重置为1
f <- function() { text(s[[i]]); i <<- i + 1 }
i <- 1
plot(s, addfun=f)https://stackoverflow.com/questions/56070636
复制相似问题