【问题标题】:How to add a loop to another loop?如何将一个循环添加到另一个循环?
【发布时间】:2019-12-16 07:40:27
【问题描述】:

我有下面的脚本正在运行。 但是,我想有一个循环来将列中的不同变量作为 y;在这个例子中:Petal.length 和 Petal.width。 因为,这个脚本里已经有一个循环了,我不知道怎么加一个。

data <-iris
uniq_species = unique(data$Species)
plot_list = list()
for (i in uniq_species) {
  temp_plot = ggplot(data= subset(data, Species == i),aes(x=Sepal.Length, y=Sepal.Width, colour=Species)) + 
    geom_boxplot()+ ggtitle(i)
  plot_list[[i]] =temp_plot}
pdf("y=Sepal Width per species.pdf")
for (i in uniq_species) {
  print(plot_list[[i]])}
dev.off()

【问题讨论】:

  • 您希望如何保存输出?作为一个单独的 pdf 文件,还是同一个 pdf 中的更多页面?你想如何存储地块?为什么要将它们存储在列表中?您也可以直接打印它们而无需存储它们。

标签: r loops ggplot2


【解决方案1】:

一种可能性应该是在之前设置 pdf 文件,然后将两个内容放在同一个 for 循环中:

plot_list = list()
pdf("y=Sepal Width per species.pdf")
for (i in uniq_species) {
temp_plot <- ggplot(data = subset(data, Species == i), aes(x = Sepal.Length, y = Sepal.Width, colour = Species)) +
geom_boxplot() + ggtitle(i)
plot_list[[i]] <- temp_plot
print(plot_list[[i]])
}
dev.off()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-12
    相关资源
    最近更新 更多