可视化和修改r中for循环中的大量绘图

可视化和修改r中for循环中的大量绘图,r,plot,R,Plot,这里是一个问题,我有很多情节,我想一个接一个地以视觉的速度修改它们 xm <- matrix(runif(20000), ncol = 1000) for (i in 1:ncol(xm)){ hist(xm[,i], col = i) } xm有几种方法: (1) 逐个查看绘图-按回车键查看下一个绘图 我们可以创建一个中断,用户可以使用返回键查看下一个绘图 xm <- matrix(runif(20000), ncol = 1000) for (i in 1:nco

这里是一个问题,我有很多情节,我想一个接一个地以视觉的速度修改它们

xm <- matrix(runif(20000), ncol = 1000)

 for (i in 1:ncol(xm)){
    hist(xm[,i], col = i)
 }

xm有几种方法:

(1) 逐个查看绘图-按回车键查看下一个绘图

我们可以创建一个中断,用户可以使用返回键查看下一个绘图

xm <- matrix(runif(20000), ncol = 1000)
for (i in 1:ncol(xm)){
    hist(xm[,i], col = i, main = paste(i))
    grDevices::devAskNewPage(ask = TRUE)
}
(3) 新窗口中的所有绘图

如果每次都要进行新绘图,可以使用:

for (i in 1:10){
    hist(xm[,i], col = i, main = paste(i))
    dev.new()
}
(4) 单个窗口中的多个绘图

如果要在一个绘图中绘制多个绘图,请执行以下操作:

par(mfrow = c(5,2))
for (i in 1:10){
    hist(xm[,i], col = i, main = paste(i))
}
(5) Pdf文件,在单独页面中有多个绘图

另一种将文件保存为PDF或其他格式的方法:

下面将创建输出PDF,将所有图形显示在不同的页面中,然后可以向下向上滚动

pdf("outtrtt.pdf",width=7,height=5)
    for (i in 1:ncol(xm)){
        hist(xm[,i], col = i, main = paste(i))
    }
dev.off()
(6) 每个绘图单独的pdf文件

或者,如果要将输出创建为每个绘图的单个PDF文件或其他图像文件类型,则可以这样做。请注意,这在mac和windows中可能有所不同

 for (i in 1:ncol(xm)){
     pdf(paste("var", i, ".pdf", sep = ""),width=7,height=5)
         hist(xm[,i], col = i, main = paste(i))
     dev.off()
 }
(7) 单独的图像文件

您可以另存为jpeg或您选择的其他格式

 for (i in 1:ncol(xm)){
     jpeg(paste("var", i, ".jpeg", sep = ""),width=700,height=500)
         hist(xm[,i], col = i, main = paste(i))
     dev.off()
 }

欢迎其他答案

我想在这个已经很好的答案的基础上增加一个可能性,将所有的图保存在一个PDF文件中(然后浏览)。谢谢你的评论和其他改进。
 for (i in 1:ncol(xm)){
     jpeg(paste("var", i, ".jpeg", sep = ""),width=700,height=500)
         hist(xm[,i], col = i, main = paste(i))
     dev.off()
 }