Увеличение числа тиков оси с функцией автоплотинга (данные временных рядов) - PullRequest
0 голосов
/ 17 октября 2019

Как бы мы добавили метки x-label модели к графику временных рядов (я использую функцию autoplot, потому что «базовому» ggplot нужен кадр данных, а у данных одного ряда столбцов могут возникнуть проблемы)

Как сделатьбольше x меток с функцией автоплоттинга

library(ggplot2)

library(gridExtra)

library(fpp2)

A <- autoplot(AirPassengers, colour = "#00AFBB", size = 1.1) +
  geom_smooth(aes(y = AirPassengers), method = "lm", colour = "#FC4E07", formula = y ~ x + I(x^2), show.legend = TRUE) + 
  ggtitle("Původní graf časové řady") + scale_x_continuous(breaks = round(seq(min(dat$x), max(dat$x), by = 0.5),1))

A

1 Ответ

1 голос
/ 17 октября 2019

Вот один вариант, переопределяющий текущую ось X:

autoplot(AirPassengers, colour = "#00AFBB", size = 1.1) +
  geom_smooth(aes(y = AirPassengers), method = "lm", colour = "#FC4E07", formula = y ~ x + I(x^2), show.legend = TRUE) + 
  ggtitle("Původní graf časové řady") +
  scale_x_continuous(breaks = scales::extended_breaks(10))

Вот еще один вариант, заменяющий текущие разрывы:

A <- autoplot(AirPassengers, colour = "#00AFBB", size = 1.1) +
  geom_smooth(aes(y = AirPassengers), method = "lm", colour = "#FC4E07", formula = y ~ x + I(x^2), show.legend = TRUE) + 
  ggtitle("Původní graf časové řady") 

A$scales$scales[[1]]$breaks <- scales::extended_breaks(10)
A

Обратите внимание, что ggplot внутренне также используетscales::extended_breaks() функция для расчета перерывов. 10, которые мы помещаем в эту функцию, - это желаемое количество перерывов, но некоторые варианты делаются в зависимости от того, что является «красивыми» метками.

Вы также можете предоставить свою собственную функцию, которая принимает пределы масштаба и возвращаетразрывы, или вы можете предоставить заранее определенные разрывы в векторе.

...