我知道在使用简单函数图时如何绘制两个图:
old.par <- par(mfrow=c(1, 2))
plot(faithful, main="Faithful eruptions")
plot(large.islands, main="Islands", ylab="Area")
par(old.par)
这会像......那样回归:
我需要为相当复杂的spplot函数做同样的事情。我想要的是3 x 3平方。
我想要绘制9次的函数是:
labelat = fivenum(gwr.res$SDF$Unempl)
labeltext = labelat
spplot(gwr.res$SDF, "Unempl", cuts = 4, at = c(fivenum(gwr.res$SDF$Unempl)), col.regions = Greens,
colorkey=list(width=0.3,
space="right",
tick.number=5,
labels=list(
at=labelat,
labels=labeltext )))
关于如何解决这个问题的任何想法?
谢谢,
答案 0 :(得分:7)
使用包grid.arrange
中的gridExtra
。执行grid.arrange(spplot(..),spplot(...),spplot(.....))
等会将它们排列在网格中。
以下是使用meuse
数据集生成9个此类图表的示例,然后使用do.call
来保存必须执行grid.arrange(plots[[1], plots[[2]],
,依此类推至9:
> require(gridExtra)
> plots = lapply(names(meuse)[1:9], function(.x) spplot(meuse,.x))
> do.call(grid.arrange,plots)
答案 1 :(得分:3)