Как добавить сюжет временного ряда в обычный сюжет? - PullRequest
0 голосов
/ 27 мая 2019

Я сделал скользящее среднее из моих временных рядов, и я хотел бы наложить его поверх моих временных рядов.

Вот моя серия ggplot(daily_revenue, aes(day, revenue)) + geom_line()

enter image description here

Вот мое скользящее среднее ma(ts(daily_rev_full$revenue, start = c(2014, 1), frequency = 365), order = 15) %>% autoplot()

enter image description here

Я попытался сложить их вместе, включив в них отдельные значения geom_line. Я также попытался добавить автоплот к ggplot и попытался создать обычный график, а затем добавить скользящую среднюю с помощью lines().

Ответы [ 2 ]

1 голос
/ 28 мая 2019

TTR может использоваться для более эффективной генерации скользящей средней в этом случае.

В качестве примера предположим, что сгенерировано 100 случайных чисел и сгенерировано простое скользящее среднее за 30 периодов.

numbers<-rnorm(100)

#SMA
library("TTR")
simplemovingaverage<-SMA(numbers,n=30)
plot(numbers,type='l',col='blue',xlab="X",ylab="Y")
lines(simplemovingaverage,type='l',col='red')
title("Numbers")

Использование plot для построения фактических значений и линий для построения SMA, вот график, который генерируется:

sma

0 голосов
/ 28 мая 2019

Используя пакет forecast, вы можете сгенерировать график объектов временных рядов, используя autoplot().Для наложения скользящей средней вы можете использовать функцию autolayer().Смотрите ниже.

library(forecast)

autoplot(WWWusage) +
  autolayer(ma(WWWusage, order = 10), colour = TRUE)
#> Warning: Removed 10 rows containing missing values (geom_path).

Создано в 2019-05-28 пакетом Представить (v0.2.1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...