Добавление нескольких участков в одну сетку страниц.аранжируйте функцию

Я строю 15 точечных диаграмм, которые включают линии регрессии. Тем не менее, я хотел бы отобразить на одной странице, чтобы лучше визуализировать. сетка.функция упорядочить помогает добавить несколько участков в соответствии с нашими интересами, однако, я всегда сталкиваюсь с ошибкой.

Ошибка в gList (list (wrapvp = list (x = 0.5, y = 0.5, width = 1, height = 1, :
только’ grobs ‘разрешено в» gList»

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))

1 ответ

  1. grid.arrange требуется сеточная графика. base plot () ничего не возвращает. Вы, вероятно, должны посмотретьsplit.screen,layout,par(mfrow=...). В качестве альтернативы (в крайнем случае) посмотрите на пакет gridBase или gridGraphics для способов объединения двух систем.