如何用for循环制作多个图?

时间:2018-02-26 22:54:37

标签: r for-loop plot waffle-chart

我正在试验r中的华夫饼包,并试图使用for循环一次制作多个绘图,但无法让我的代码工作。我有一个数据集,其中包含每年可再生能源的价值,并且由于它有超过40年的数据,因此正在寻找一种简单的方法来绘制这些以for循环而不是年复一年。我究竟做错了什么? 我从1:16开始作为一个实验,看看它是否会起作用,尽管实际上我会在我的数据集中这么多年来这样做。



for(i in 1:16){
renperc<-islren$Value[i]
parts <- c(`Renewable`=(renperc), `Non-Renewable`=100-renperc)
waffle(parts, rows=10, size=1, colors=c("#00CC00", "#A9A9A9"), 
       title="Iceland Primary Energy Supply", 
       xlab=islren$TIME)
}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

更新:当我尝试输入任何超过一个值(例如1:16)或字母的任何东西时,代码根本就没有绘制任何东西,无论是在单独的情节还是在一个情节窗口中(我想也许)华夫饼干不像常规情节那样支持。最后,我通过将其变成一个函数来管理,虽然我仍然不确定为什么我的原始方法如果这样做就不会起作用。请参阅下面的代码。我也稍微调整了一下,例如添加了ggsave。

    #function
    waffling <- function(x){
    renperc<-islren$Value[x]
    parts <- c(`Renewable`=(renperc), `Non-Renewable`=100-renperc)
    waffle(parts, rows=10, size=1, colors=c("#00CC00", "#A9A9A9"), title="", 
    xlab=islren$TIME[x])
    ggsave(file=paste0("plot_", x,".png"))}

    for(i in 1:57){
    waffling(i)
    }