У меня есть данные о преступности за 2018-2020 годы. Каждый ряд представляет одно преступление. Для примера рассмотрим, что есть две переменные crimetype
(например, кража, грабеж) и date
(когда было совершено преступление).
Некоторые примеры данных:
data <- data.frame(date= sample(seq(as.Date('2018/01/01'), as.Date('2020/12/31'), by="day"),10000, replace=T),
crimetype = sample(c("A", "B", "C"), 100000, replace=T))
Моя цель - создать сюжет для, скажем, преступлений типа "А". На оси абсцисс должна быть дата (с 1 января по 31 декабря), на оси ординат должно быть количество преступлений в день. Однако, поскольку я хочу, чтобы три линии (по одной на каждый год) отображались друг над другом, чтобы я мог их сравнить, на оси х не должно быть года. Или это не должно отображаться по крайней мере.
^ . . . . . .
| . . .
| . . .
n | . 2018
| - - -
| - - - - - - - - 2019
| = = =
| = = = = = = = = 2020
|
------------------------------------->
Jan-1 Dec-31
Я пытался создать новую переменную даты со всеми датами в том же году (здесь 2020).
data <- data %>% mutate(daymonth = substr(date, 5, length(date)),
date_new = as.Date(paste("2020", daymonth, sep="")),
daymonth = NULL)
Есть ли лучший способ сделать это и как я могу построить график?
data_plot <- data %>% filter(crimetype == 'A')
ggplot(data = data_plot, aes(x = date_new, y = ?, color=format(date, "%Y")) + geom_line()