自动绘制(并保存)xts对象列表

时间:2013-04-04 19:54:58

标签: r list plot xts quantmod

我有一长串xts个对象,我想自动绘制并将它们保存到一个文件夹中(因为需要花费很长时间才能手动完成> 500个绘图)。棘手的部分似乎是将函数应用于xts对象的列表。例如,根据列表元素的日期获取列表元素的通用命名方法(列表中的每个xts对象是唯一的一天),并绘制每个对象并将它们保存到具有自己名称的文件路径。 / p>

数据可在之前的帖子here中找到。每个xts元素都是列表中的唯一日期,其中包含价格和数量列。我正在使用xts,TTR和quantmod包以及最新的R(2.15)。

我已尝试使用此代码命名列表元素,基于r-bloggers上的一个很棒的post

names(sample.data.uniquePOS) <- paste0("sample.data.uniquePOS", lapply(sample.data.uniquePOS, function(x) .indexday(sample.data.uniquePOS)))                                                    

这应该按照他们的日期索引命名(例如,如果2012年1月1日那么它将是“2012-01-01”作为元素名称)。不幸的是,它不起作用,产生一个长度为sample.data.uniquePOS的列表,但每个元素都被命名为sample.data.uniquePOSnumeric(0)。我认为问题是.indexday应用于列表,应该是xts对象,但我不确定如何解决它。

下一步是生成保存图的文件路径,然后执行绘图:

mypath <- file.path("C:", "Documents and Settings", 
                              paste("Date_", names(sample.data.uniquePOS), ".jpg", sep = ""))

jpg(file=mypath)
mytitle = paste("my title is", names(sample.data.uniquePOS))
candleChart(sample.data.uniquePOS[[1]]:sample.data.uniquePOS[[length(sample.data.uniquePOS)]])
dev.off()
}

这有同样的问题candleChart需要应用于xts对象而不是列表:

Error in try.xts(x, error = "chartSeries requires an xtsible object") : 
  chartSeries requires an xtsible object

我真的很感激这方面的帮助!

0 个答案:

没有答案