Я пытаюсь создать анимированный график с gganimate
. Мой дефолтный график, stati c выглядит примерно так:
Но вместо 3 группирующих переменных у меня 12 (год 0, год 1, год 2 и т. Д. c) .). Вместо того, чтобы построить все 12 переменных вместе, я хотел бы оживить это. Чтобы избежать:
Эти графики плотности ядра сделаны следующим образом:
data_decidious %>% tidyr::gather("YEAR", "NDVI", colsPostNDVI) %>%
mutate(YEAR = str_remove(YEAR, 'meanNDVIyear')) %>% mutate(YEAR = str_remove(YEAR, 'meanprefire_NDVI')) %>% mutate(YEAR = as.factor(YEAR)) %>%
ggplot(aes(NDVI,fill=YEAR)) + geom_density(alpha=.2) + xlim(0.3, 0.7) + ylim(0,46) +
xlab("Mean NDVI") + ylab("Kernal density") + guides(fill=guide_legend(title="Comparative"))
Я обнаружил, что этот geom_density()
работает только при добавлении mutate(YEAR = as.factor(YEAR))
. Это означает, что когда я добавляю:
transition_time(YEAR) + ease_aes('linear')
Я получаю ошибку:
Error: time data must either be integer, numeric, POSIXct, Date, difftime, orhms
In addition: Warning message:
In min(cl[cl != 0]) : no non-missing arguments to min; returning Inf
Есть идеи оживить мой график?