从函数内部绘制xts对象时可能出现的问题

时间:2019-03-08 09:47:08

标签: r xts

我于2019年3月8日星期五升级到最新的R,xts,Rstudio版本。这是一个非常简单的示例,展示了从函数绘制xts对象时可能出现的问题。为了演示该问题,我有两种情况:“应有的工作”和“不起作用”的情况:

这是“应有的工作”情况:

library(xts)
function_plot1<-function()
{
  data(sample_matrix)
  plot(as.xts(sample_matrix))
}

function_plot1()

我应该可以在绘图面板中看到一个绘图。

现在“不起作用”情况:

function_plot<-function()
{

  data(sample_matrix)
  plot(as.xts(sample_matrix))
  print("")

}

function_plot()

在此示例中,该图不再显示。上面两个函数之间的唯一区别是,在后一个函数(打印顺序)中的绘图调用之后,“我做某事”。如果我引入了其他一些命令(而不是打印命令),也会发生同样的问题。在函数中绘制xts对象时出现此问题。

1 个答案:

答案 0 :(得分:2)

在打印区周围使用打印。

function_plot<-function()
{

  data(sample_matrix)
  print(plot(as.xts(sample_matrix)))
  print("")

}

function_plot()

一个函数仅返回最后评估的结果,这就是为什么该图不渲染的原因。