НачатьНачать бесплатно

Извлечение компонентов для построения графиков

Извлечение компонентов из объекта даты-времени особенно полезно при анализе данных. Ранее в этой главе вы импортировали ежедневные данные о погоде в Окленде и построили временной ряд максимальной температуры за десять лет. Этот график даёт общее представление о данных, однако годовой паттерн на нём трудно различить.

В этом упражнении вы используете компоненты дат, чтобы исследовать динамику максимальной температуры в течение года. Сначала создайте несколько новых столбцов для хранения извлечённых значений, а затем используйте их для построения нескольких графиков.

Это упражнение является частью курса

Работа с датами и временем в R

Посмотреть курс

Инструкции к упражнению

  • С помощью mutate() создайте три новых столбца: year, yday и month, которые будут содержать соответствующие компоненты столбца date. Не забудьте задать месяцам их названия.
  • Постройте график, где по оси x откладывается yday, по оси y — max_temp, а линии сгруппированы по year. Каждая линия соответствует одному году, ось x охватывает период с 1 января по 31 декабря.
  • Для альтернативного взгляда на данные постройте «риджлайн»-график (ранее известный как joyplot): по оси x — max_temp, по оси y — month, используя функцию geom_density_ridges() из пакета ggridges.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

library(ggplot2)
library(dplyr)
library(ggridges)

# Add columns for year, yday and month
akl_daily <- akl_daily %>%
  mutate(
    ___ = ___(date),
    ___ = ___(date),
    ___ = ___(date, ___))

# Plot max_temp by yday for all years
ggplot(akl_daily, aes(x = ___, y = ___)) +
  geom_line(aes(group = ___), alpha = 0.5)

# Examine distribution of max_temp by month
ggplot(akl_daily, aes(x = ___, y = ___, height = ..density..)) +
  geom_density_ridges(stat = "density")
Редактировать и запускать код