从预测包中消除自动绘图中历史和预测之间的差距
Removing gap between historical and forecasted in autoplot from forecast package
?autoplot.forecast
If showgap=FALSE, the gap between the historical observations and the forecasts is removed.
但是,对我来说它没有被删除。
library(forecast)
d <- ts(rnorm(36), start = c(2021, 1), frequency = 12)
fc <- snaive(d, h = 12)
autoplot(fc, showgap = FALSE)
但是使用 plot
效果很好
plot(fc, showgap = FALSE)
OP,本来以为是forecast::autoplot()
函数的bug,结果发现不是。当您在 'forecast'
对象上使用 plot()
时,函数 plot.forecast()
为 运行,包含 showgap=
参数。命令 ?autoplot.forecast
确实指示 showgap=
参数,但不适用于 autoplot()
- 它用于 plot.forecast()
函数。
好消息是 autolayer(...)
中似乎有一个方法包含此参数,您可以使用它。即再次检查帮助 plot.forecast()
稍微低一点,你会看到这个:
## S3 method for class 'forecast'
autolayer(object, series = NULL, PI = TRUE, showgap = TRUE, ...)
我们可以将 autolayer()
与 autoplot()
配合使用。所以,这似乎有效:
autoplot(fc) + autolayer(fc, showgap = F)
?autoplot.forecast
If showgap=FALSE, the gap between the historical observations and the forecasts is removed.
但是,对我来说它没有被删除。
library(forecast)
d <- ts(rnorm(36), start = c(2021, 1), frequency = 12)
fc <- snaive(d, h = 12)
autoplot(fc, showgap = FALSE)
但是使用 plot
效果很好
plot(fc, showgap = FALSE)
OP,本来以为是forecast::autoplot()
函数的bug,结果发现不是。当您在 'forecast'
对象上使用 plot()
时,函数 plot.forecast()
为 运行,包含 showgap=
参数。命令 ?autoplot.forecast
确实指示 showgap=
参数,但不适用于 autoplot()
- 它用于 plot.forecast()
函数。
好消息是 autolayer(...)
中似乎有一个方法包含此参数,您可以使用它。即再次检查帮助 plot.forecast()
稍微低一点,你会看到这个:
## S3 method for class 'forecast'
autolayer(object, series = NULL, PI = TRUE, showgap = TRUE, ...)
我们可以将 autolayer()
与 autoplot()
配合使用。所以,这似乎有效:
autoplot(fc) + autolayer(fc, showgap = F)