我正在处理一些R代码,该代码会生成许多图像为png文件;但是,在工作目录中会继续生成Rplots.pdf文件,有没有办法防止这种情况发生?

library(Cairo)
CairoPNG(file = "graphs.png")
nf <- layout(matrix(c(1:8), 2, 4, byrow=T), c(1, 1), c(1, 1, 1, 1), TRUE)
for (k in 1:num.k) {
    plotMatrix(connect.matrix.ordered[k,,], log = F, main = paste("k=", k.vector[k]), sub = paste("Cophenetic coef.=", rho[k]), ylab = "samples", xlab ="samples")
}
y.range <- c(1 - 2*(1 - min(rho)), 1)
plot(k.vector, rho, main ="Cophenetic Coefficient", xlim=c(k.init, k.final), ylim=y.range, xlab = "k", ylab="Cophenetic correlation", type = "n")
lines(k.vector, rho, type = "l", col = "black")
points(k.vector, rho, pch=22, type = "p", cex = 1.25, bg = "black", col = "black")
dev.off()

最佳答案

我想知道您是否有另一个命令可以在您给我们的代码片段之前或之后打开设备。当您完成所有操作后,请运行dev.cur()来查看是否有打开的设备。如果不是,则应返回空设备。

这是您可以重新创建获取Rplots.pdfRplot001.png的方法;如果未打开设备,layoutpar命令会打开设备,并且由于未提供文件名,因此它将使用默认文件名。

options(device="pdf")
layout(1:4)
dev.off()

options(device="png")
par()
dev.off()

也许看到这里发生会为您提供有关代码发生情况的线索。

关于r - 如何防止生成Rplots.pdf?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6535927/

10-12 18:57