将多个图 r 保存到单独的 jpg

save multiple plots r into separate jpg

亲爱的 Whosebug 用户!

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

Here are the data 作为保管箱上的 .csv。

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 文件。我发现了一些线索 here。代码如下所示:

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。我遵循使代码可重现的建议并添加了我的数据库示例。当我使用 i.e. iris 时,它起作用了。我的数据似乎有问题,可能是一些 NA?但是当我使用 na.omit() 时,它是一样的。

PS.2 我检查了另一个绘图函数,如 hist() 或 plot(),但它们是一样的。只制作并保存了一张图。

这在这里有效!

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 个: