rasterVis::levelplot
使用 using绘制连续栅格和因子栅格的混合时print(..., more=TRUE)
,面板的高度和宽度不一致。这似乎是由于颜色键(图例)的宽度和颜色键的刻度标签的差异。
例如:
library(raster)
library(rasterVis)
r1 <- raster(matrix(runif(100), 10))
r2 <- as.factor(raster(matrix(rbinom(100, 1, 0.8), 10)))
levels(r2)[[1]]$name <- c('gray', 'lightblue')
p1 <- levelplot(r1, margin=FALSE, scales=list(draw=FALSE),
at=seq(0, 1, length.out=100))
p2 <- levelplot(r2, scales=list(draw=FALSE),
col.regions=c('gray90', 'lightblue'))
print(p1, split=c(1, 1, 1, 2), more=TRUE)
print(p2, split=c(1, 2, 1, 2))
有没有办法修改格子图形参数(例如,布局宽度/高度?)以实现一致大小的绘图,使其看起来更像是绘制 RasterStack 时使用的布局?
或者是否有组合这些栅格的替代方法,可以扩展到具有多列和多行的布局?(其他绘图框架很好,但基本图不容易支持因子栅格。)