这就是我的问题:如果我在全局环境中运行以下命令,一切都会按预期进行:
pdf("~/test.pdf")
plot.xts(xts(x = runif(10), order.by = Sys.Date() + 0:9))
dev.off()
但是,我想通过函数将xts图输出到pdf,即
plot_test <- function(){
pdf("~/test.pdf")
plot.xts(xts(x = runif(10), order.by = Sys.Date() + 0:9))
dev.off()
}
plot_test()
我的问题是,当我这样做时,结果pdf为空。这个问题似乎特定于plot.xts,因为以这种方式实现时,R的内置绘图功能确实起作用。
我尝试摆弄dev.set,dev.new等,但无法找出问题所在。我假设它与plot.xts有关,而不是写入pdf()启动的设备。
答案 0 :(得分:0)
在函数内部时,您必须使用“打印”。
plot_test <- function(){
pdf("~/test.pdf")
print(plot.xts(xts(x = runif(10), order.by = Sys.Date() + 0:9)))
dev.off()
}
plot_test()