Это моя рудиментарная попытка создать вспомогательный столбец, который можно использовать в качестве нашего transition_time
, чтобы показать, как мы можем иметь различный временной шаг, но желаемые метки.
Позже вы можете потратить еще немного времени на созданиеулучшенные столбцы *timestep
, которые являются более сложными и точно соответствуют вашим потребностям.
Основная идея / точка зрения здесь заключается в том, что мы можем использовать функции на frame_time
для получения меток по мере необходимости, тогда как transition_time
можно манипулировать.
library(ggplot2)
library(gganimate)
library(dplyr)
g <- airquality %>%
group_by(Month) %>%
mutate(timestep = if_else(Month==5, ((1:n())-1)/2 + Month, 15 + Month)) %>%
ggplot(aes(Day, Temp, group = interaction(Month, Day))) +
geom_point(color = 'red', size = 1) +
transition_time(timestep) +
shadow_mark(colour = 'black', size = 0.75) +
enter_fade() +
labs(title = 'Month: {if_else(frame_time<21,5, ceiling(frame_time-15))}')
animate(g, nframes = 100)
![](https://i.imgur.com/lgt9l8l.gif)
Создано в 2019-06-02 пакетом Представить (v0.3.0)