for循环中每页多个图

时间:2017-01-07 06:10:10

标签: r grid

我有一个包含多个(64个)数据帧的列表对象。虽然我可以成功地设法为循环中的每个数据框绘制多个直方图(在64页PDF文档中,每个绘图在新页面上),但我很难生成8页PDF文档,每个8个图页面。
我用过的代码:

    listfinal1 <- list()
    listfinal2 <- list()
    for (i in 1:64){
    listfinal1[[i]] <- data.frame(rnorm(100,10))
    colnames(listfinal1[[i]]) <- c("Column A")
    }
    for (i in 1:64){
    listfinal2[[i]] <- data.frame(rnorm(10,1))
    colnames(listfinal2[[i]]) <- c("Column B")
    }
    plot_list <- list()
    pdf("jnk1.pdf")
    plotlist <- list()
    for (i in 1: length(listfinal1)){
    P1 <- hist(listfinal1[[i]][,1],breaks=seq(-30,30,by=2),plot=FALSE)
    P2 <- hist(listfinal2[[i]][,1],breaks=seq(-30,30,by=2),plot=FALSE)
    P3 <- plot(0,0,type="n",xlim=c(-30,30),ylim= c(0,max(P1$counts)+2),xlab="Costum Lenghts (mm)",ylab= "Frequency")
    grid(col="lightgray",lty="solid")
    plot1 <- plot(P1,col="black",density=0,angle=135,add=TRUE)
    plot2 <- plot(P2,col="red",density=50,angle=45,add=TRUE)
    plotlist[[i]] <- plot2
     }

     dev.off()

1 个答案:

答案 0 :(得分:0)

立即绘制1-基础图形,您无法将它们分配给变量

2- par(mfrow=c(4,2))将每页放置4x2图

pdf('test.pdf')
par(mfrow=c(2,1))
for(ii in 1:3){
  plot(1,1)
  hist(rnorm(10))
}
dev.off()