[英]Manipulating x-axis for forecast/timeseries objects
美好的一天,
我正在嘗試在R中生成的預測的右側進行剪切/縮放。時間序列/ ARIMA代碼如下所示。 我已經嘗試過使用子集xlimit的多種方法,但是無論如何我還是無法獲得。 我已經嘗試過coord_cartersian,但不確定是否適用於預測數據集(試圖研究預測/ ggplot軟件包文檔,但沒有明確的答案)。
下面是我的代碼
#time series from January 1st 2012 until 10th of august 2016
dd = ts(data = dailydemand, frequency = 365)
dd.arima = auto.arima(dd) # Auto arima
dd.f = forecast.Arima(dd.arima, h = 7) # forecast 7 days
# getting the quantity needed for next day
n2.cnt = as.data.frame(dd.f)
n2.cnt = as.numeric(round(dd.f [1,1]) )
autoplot(dd.f) +
ggtitle("Daily demand forecast") +
ylab("Count of cars") +
geom_hline(dd.f, yintercept = n2.cnt)
coord_cartesian沒用,我也嘗試過縮放包來放大過去3天
coord_cartesian
似乎為我工作。 您沒有提供一個最小的可復制示例 (請下次進行),因此在此我以AirPassengers
數據集為例。
library(forecast)
library(ggplot2)
library(gridExtra)
dd <- AirPassengers
dd.arima <- auto.arima(dd) # Auto arima
dd.f <- forecast.Arima(dd.arima, h = 12) # forecast 12 months
檢查attr(dd.f$x, "tsp")
。 x軸似乎是實際年份,因此我們用coord_cartesian
表示限制:
attr(dd.f$x, "tsp")
# [1] 1949.000 1960.917 12.000
g1 <- autoplot(dd.f) +
ggtitle("Air passengers forecast") +
ylab("y")
g2 <- autoplot(dd.f) +
ggtitle("Air passengers forecast") +
ylab("y") +
coord_cartesian(xlim = c(1960, 1962.1))
grid.arrange(g1, g2, ncol=2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.