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

Добавляем «дождь» из точек

Повышенная двумодальность в начале недели может быть интересной закономерностью, однако прежде чем делать выводы, стоит отобразить отдельные точки под кривыми плотности — чтобы лучше понять, как KDE выполняет интерполяцию.

К коду из предыдущих упражнений уже добавлена геометрия точек. Пока она выглядит не очень аккуратно. Исправим это в несколько шагов.

Сначала немного снизим alpha точек, чтобы показать их наложение. Затем изменим форму точек на вертикальные черты в стиле geom_rug() ('|').

Если запустить код сейчас, точки будут неаккуратно перекрывать фигуры плотности. Нам нужно немного сдвинуть метки вниз по оси Y. Для этого воспользуемся аргументом position и вспомогательной функцией position_nudge().

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

Лучшие практики визуализации в R

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

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

  • Установите alpha точек равным 0.2, чтобы отобразить их наложение.
  • Измените форму линий (shape) на '|' для более компактного отображения.
  • Сдвиньте точки вниз, чтобы они не перекрывали фигуру плотности: position = position_nudge(y = -0.05).

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

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

md_speeding %>% 
    mutate(day_of_week = factor(day_of_week, levels = c("Mon","Tues","Wed","Thu","Fri","Sat","Sun") )) %>% 
    ggplot(aes( x = percentage_over_limit, y = day_of_week)) + 
    geom_point(
        # make semi-transparent with alpha = 0.2
        # turn points to vertical lines with shape = '|'
        # nudge the points downward by 0.05
    ) +
    geom_density_ridges(bandwidth = 3.5, alpha = 0.7) +
    scale_x_continuous(limits = c(0,150), expand  = c(0,0)) +
    labs(subtitle = 'Guassian kernel SD = 3.5') +
    theme( axis.ticks.y = element_blank() )
Редактировать и запускать код