Вы, вероятно, должны выполнить вычисления в кадре данных перед графиком (убедитесь, что ваш столбец Date
имеет правильный формат date
).
Один вариант, который вы можете попробовать:
df_ggplot <- df_ggplot %>%
mutate(time_diff = difftime(time1 = Date, time2 = lag(x = Date, n = 1), units = "weeks"),
is_red = as.factor(time_diff < 4))
даст вам очки, которые необходимо пометить.
Date Ccount time_diff is_red
1 2019-08-17 20000 NA weeks <NA>
2 2019-08-30 15000 1.857143 weeks TRUE
3 2019-09-30 25000 4.285714 weeks FALSE
Затем вы можете построить, используя несколько цветов, которые вы хотите.
ggplot(df_ggplot, aes(x = Date, y = Ccount)) +
geom_line() +
geom_point(aes(color = is_red)) +
scale_color_manual(values = c("black", "red"), na.value = "black")