0

亲爱的 Stackoverflow 人!

我有简单的数据库,应用程序。130 个变量、1500 条记录和许多类似的图要创建。我尽量避免手动保存它们。for 循环非常适合绘图(在 RStudio 中)。

以下是.csv 在 Dropbox 上的数据。

data <- read.csv2("data.csv", header=TRUE)
data <- select(data,v1,v2,v3,v4,v5,v6,v7)

for (i in data) {
    sjp.frq(i)
}

我想将绘图保存在某个目录中作为单独的 .png 或 .jpg 文件。我在这里找到了一些线索。代码如下所示:

data <- select(df,v1,v2,v3,v4,v5,v6,v7)
variables <- names(data)

for (i in data) {
  png(paste0("plots/plot_",names(data)[i],".png"))
    sjp.frq(i)
  dev.off()
}

我特意简化了 sjp.frq 表达式,以免代码过于复杂。

这就是问题所在。我在文件夹中只得到一个 .png 文件。我在哪里犯错?应该有七个。

最好的问候, MaciejB。

PS。我遵循使代码可重现并添加数据库示例的建议。当我使用 ie iris 时,它可以工作。我的数据似乎有问题,可能是一些 NA?但是当我使用 na.omit() 时,它是一样的。

PS.2 我检查了另一个绘图函数,如 hist() 或 plot() 但它是一样的。只有一个地块产生并保存。

4

1 回答 1

0

这在这里有效!

data1 <- read.csv2("~/Temp/data.csv", header=TRUE)
data <- select(data1,v1,v2,v3,v4,v5,v6,v7)
variables <- names(data)
dane=1:length(variables)
for (i in dane ) { #i=2
  png(paste0("Temp/plot_",names(data)[i],".png"))
  sjp.frq(data[,i],title = names(data)[i])
  dev.off()
}

这里有 3 个地块:

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

于 2016-06-10T19:51:00.727 回答