如何正确设置绘图循环?

时间:2018-05-02 18:40:18

标签: r for-loop

我仍然是一个努力设置绘图循环(* .png文件)的新手。 “打开设备失败”。老实说,我不知道如何处理。

我的方法:

count

我收到以下错误代码:

names =list(Pic1,Pic2,Pic3,Pic4,Pic5,Pic6,Pic7,Pic8,Pic9,P10)


for (i in 1:10){

mypath <- file.path("C:","Users",paste("myplot_",names[i],".png"))
png(file=mypath)
mytitle = paste("Training PIC", names[i])
par(mfrow=c(3,1), oma=c(2,2,4,2))
boxplot(ERRORS.train.pic[[i]], outline=F, ylab="RMSE(-)", xlab="K-No")
abline(h = 0, col = "red")
plot(sapply(ERRORS.train.pic[[i]], median), ylab="MEDIAN-RMSE(-)", xlab="K-No",type="l", col="blue")
plot(sapply(ERRORS.train.pic[[i]], mean), ylab="MEAN-RMSE (-)", col ="red")
title(main= mytitle, outer=T)
dev.off()
}

我非常感谢有关该问题的一些提示。提前致谢, 奥利

1 个答案:

答案 0 :(得分:0)

显然file.path函数是问题所在。我采取了另一种方式并解决了这个问题。

我的解决方案:

dir <- "C:\\Users\\"
    names =list(Pic1,Pic2,Pic3,Pic4,Pic5,Pic6,Pic7,Pic8,Pic9,P10)
    for (i in 1:10){

    mypath <- paste0(dir,"Training-Result",names[i],".png")
    png(file=mypath)
    mytitle = paste("Training PIC", names[i])
    par(mfrow=c(3,1), oma=c(2,2,4,2))
    boxplot(ERRORS.train.pic[[i]], outline=F, ylab="RMSE(-)", xlab="K-No")
    abline(h = 0, col = "red")
    plot(sapply(ERRORS.train.pic[[i]], median), ylab="MEDIAN-RMSE(-)", xlab="K-No",type="l", col="blue")
    plot(sapply(ERRORS.train.pic[[i]], mean), ylab="MEAN-RMSE (-)", col ="red")
    title(main= mytitle, outer=T)
    dev.off()

任何人都可以提出如何使用file.path的方式我仍然很感激。干杯!