保存多个箱图

lis*_*nne 5 r save boxplot

我做了一个循环来创建多个箱图.问题是,我想保存所有的箱图,而不是互相覆盖.有什么建议?

这是我目前的代码:

boxplot <- list()
for (x in 1:nrow(checkresults)){
    boxplots <- boxplot(PIM[,x], MYC [,x], OBX[,x], WDR[,x], EV[,x], 
                        main=colnames(PIM)[x], 
                        xlab="PIM, MYC, OBX, WDR, EV")
}
Run Code Online (Sandbox Code Playgroud)

jub*_*uba 6

您想将它们保存在某些文件中,还是保存它们以便能够在不同的窗口中查看它们?

如果是第一种情况,你可以使用png,pdf或任何函数调用你的内for循环:

R> for (i in 1:5) { 
R>    png(file=paste("plot",i,".png",sep=""))
R>    plot(rnorm(10))
R>    dev.off() 
R> }
Run Code Online (Sandbox Code Playgroud)

如果要在单独的窗口中显示它们,只需使用dev.new:

R> for (i in 1:5) { 
R>    dev.new()
R>    plot(rnorm(10)); 
R> }
Run Code Online (Sandbox Code Playgroud)


csg*_*pie 6

只是为了添加@juba的答案,如果你想将图表保存到多页pdf文件中,那么你不必使用paste@juba建议的命令.这个

pdf("myboxplots.pdf")
for (x in seq_along(boxplots)){
    boxplot(PIM[,x], MYC [,x], OBX[,x], WDR[,x],EV[,x],
                     main = colnames(PIM)[x], 
                     xlab = "PIM, MYC, OBX, WDR, EV")
}
dev.off() 
Run Code Online (Sandbox Code Playgroud)

创建单个多页pdf文档,其中每个页面都是一个箱形图.如果要将箱图存储在单独的pdf文档中,请使用该file=paste命令.