在一个页面grid.arrange函数中添加多个图
我绘制了15个包含回归线的散点图。 不过,我想在一个页面上展示以更好地形象化。 grid.arrange函数有助于根据我们的兴趣添加多个图,但是我总是面对一个错误。
gList中的错误(list(wrapvp = list(x = 0.5,y = 0.5,width = 1,height = 1,仅在'gList'中允许'grobs'
plots <- list()
for (i in 1:(ncol(xx2)-1)) {
cn <- colnames(xx2)
reg<-lm(xx2[,i]~xx2[,16], data=data.frame(xx2))
aa<-summary(reg)
p1<-plot(xx2[,16], xx2[,i], xlab=cn[16], ylab=cn[i],
pch=1, cex.main=1.5, frame.plot=FALSE, col="grey")+ abline(reg, col="blue", lwd=2) + text(max(xx2[,16]/1.3), max(xx2[,i])/2, paste("R-Squared:",round(aa$r.squared,3)),cex = .8)
#plot(density(resid(reg)))
plots[[i]] <- p1
}
grid.arrange(grobs = plots[1:15], ncol=5)
要么
do.call(grid.arrange, c(plots, ncol=3))
grid.arrange
需要基于网格的图形。 基地plot()不返回任何东西。 你可能应该看看split.screen
, layout
, par(mfrow=...)
。 或者(作为最后的手段)查看gridBase或gridGraphics软件包,了解如何组合这两个系统。
上一篇: Adding multiple plots at one page grid.arrange function