将箭头添加到 levelplot

Add arrows to levelplot

我想向分类栅格图中添加一些箭头。以 Base R(在未批准的栅格上)为例:

r <- raster(nrow=10, ncol=10, crs='+proj=utm +zone=1')
r[] = 1
r[51:100] = 3
r[3:6, 1:5] = 5

plot(r)

arrows(100, 50,
       0, 50, 
       length = 0.1, 
       lwd=2,
       col="red"
)

在 levelplot 中,您必须首先批准栅格并添加适当的级别:

r <- raster(nrow=10, ncol=10, crs='+proj=utm +zone=1')
r[] = 1
r[51:100] = 3
r[3:6, 1:5] = 5


r <- ratify(r)
rat <- levels(r)[[1]]
rat$landcover <- c('Pine', 'Oak', 'Meadow')
rat$class <- c('A1', 'B2', 'C3')
levels(r) <- rat

levelplot(r)

如何将红色箭头(如示例 1 所示)添加到第二个代码块中显示的 levelplot()

谢谢。

你可以用layerpanel.arrows来解决:

levelplot(r) + 
   layer(panel.arrows(100, 50, 0, 50, 
                      col = 'white'))