我有一长串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
我真的很感激这方面的帮助!