我想立刻想象出许多时间序列。我是R的新人,花了大约6个小时在网上搜索并阅读如何解决这个相对简单的问题。我的数据集有五个时间点排列为行,100列。我可以使用qplot(time, var2, geom="line")
轻松地根据时间点绘制任何列。但我想学习如何为灵活数量的列进行此操作,以及如何在一个页面上打印6到12个单独的图形。
在这里,我学习了多重绘图功能,使其在布局方面起作用。
我所坚持的是如何将变量列表变为FOR语句,以便我可以使用一个语句将所有变量映射到相同的五个时间点。
这就是我正在玩的东西。它制作了9个图,3列宽,但我不知道如何将所有变量都放入yvars的数组中?
for (i in 1:9) {
p1 = qplot(symbol,yvar, geom ="smooth", main = i))
plots[[i]] <- p1 # add each plot into plot list
}
multiplot(plotlist = plots, cols = 3)
现在我愚蠢地制作了9个相同的情节。那么我该如何创建列表,以便上面的内容遍历我的所有列并制作这些图?
答案 0 :(得分:1)
首先使用reshape2包解压所有数据
datm <- melt(your.original.data.frame, id = "time")
现在使用facets绘制它:
qplot(time, value, data = datm, facets= variable ~ ., geom="point")
如果有效,请告诉我。如果可以,请上传您的数据,这将有很大帮助。