复现某个特定情节
我有这段代码,可以生成一个很漂亮的图。
library(forecast)
fit <- auto.arima(WWWusage)
fc <- forecast(fit, h=20, level=95)
qf <- matrix(0, nrow=99, ncol=20)
m <- fc$mean
s <- (fc$upper-fc$lower)/1.96/2
for(h in 1:20)
qf[,h] <- qnorm((1:99)/100, m[h], s[h])
plot(fc)
matlines(101:120, t(qf), col=rainbow(120), lty=1)
现在,我想用下面这段代码来创建这张图。它会计算另一组数据的分位数,但我不确定如何生成上面的图。
library(fpp3)
library(distributional)
fc <- aus_production |>
model(ARIMA(Beer)) |>
forecast(h = 20)
pc <- seq(99)
fc |>
as_tibble() |>
group_by(Quarter) |>
reframe(percentile = quantile(Beer, pc / 100)) |>
unnest(percentile) |>
mutate(pc = rep(pc, 20))
解决方案
也许可以这样做?
library(ggplot2)
... |>
ggplot(aes(Quarter)) +
geom_line(aes(y = percentile, color = factor(pc))) +
geom_line(data = aus_production |>
tsibble::filter_index("2005-01" ~ .), # for clearer demo output
aes(y = Beer)) +
guides(color = "none")
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。
