我正在绘制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)
OR
do.call(grid.arrange, c(plots, ncol=3))
答案 0 :(得分:0)
grid.arrange
需要基于网格的图形。 base plot()不返回任何内容。您可能应该查看split.screen
,layout
,par(mfrow=...)
。或者(作为最后的手段)查看gridBase或gridGraphics包,以了解如何组合这两个系统。