1
我正在嘗試使用rasterVis
程序包的levelplot
函數與gridExtra
的grid.arrange
結合使用七個柵格繪製一個面板。使用rasterVis和gridExtra排列奇數個地塊
我幾乎得到了什麼,我需要通過使用下面的代碼:
# load required packages
library(rasterVis)
library(gridExtra)
# load sample raster
f <- system.file("external/test.grd", package="raster")
r <- raster(f)
# create plots
p1 <- levelplot(r, xlab=NULL, ylab=NULL, margin=FALSE)
p2 <- levelplot(r*2, xlab=NULL, ylab=NULL, margin=FALSE,colorkey=FALSE)
# put plots in list
p.list <- list(p1,p2,p2,p2,p2,p2,p2)
# create layout
lay <- rbind(c(1,1,1),
c(2,3,4),
c(5,6,7))
# arrange plots
grid.arrange(grobs=p.list, layout_matrix=lay)
這將產生這個數字:
然而,有一些事情我還需要改進:
- 如何減少瓶子裏的情節之間的空白om行?
- 如何爲六個底部柵格添加單個組合圖例,優先放置在圖的底部?
這可能實現使用rasterVis
和gridExtra
?有沒有其他方法可以使用?
每個地塊提供保證金,並減少它的期望。 – Masoud
@Masoud,謝謝你的建議。但是,如果我添加'lattice.options( layout.heights = list(bottom.padding = list(x = 0),top.padding = list(x = 0)), layout.widths = list(left.padding = list(x = 0),right.padding = list(x = 0)) )' – thiagoveloso