R中的png()迭代错误

时间:2017-07-20 17:48:55

标签: r for-loop plot png

目前我在for循环中遇到png()函数问题。下面是代码的简化示例。向量表示多个形状文件的指标值,我试图在png中迭代,绘图和保存。

match <- c(1,2,3,4,5,6,7,8,9)
for(m in 1:length(match)){
  png("WMA", m, "/_example_plot.png")
  p <- c(plot(match[m]))
  dev.off()
}

我从我的脚本收到以下错误:

  

开关出错(单位,in = res,cm = res / 2.54,mm = res / 25.4,px =   1)*:二元运算符的非数字参数

以下追踪

  

2..geometry(宽度,高度,单位,res)

     

1.png(&#34; WMA&#34;,m,&#34; / _ example_plot.png&#34;)

绘图代码和文件路径可以自行正常工作。我已经使用匹配向量中的一些指标值测试了我的所有png()函数。但是,当我遍历每个指标值时,我收到错误。

这篇stackoverflow帖子让我相信我应该创建一个函数来设置png()的几何。但是,我不知道该怎么做/为什么我需要这样做。任何和所有信息一如既往地受到赞赏:)

1 个答案:

答案 0 :(得分:0)

我认为问题在于您要创建更改名称的PNG。错误是您不使用paste0函数连接名称。那就是:png(paste0("WMA", m, "/_example_plot.png"))
在您的代码中,PNG函数有第一个参数"WMA",第二个参数m和第三个参数"/_example_plot.png")