R: добавление статических строк в анимацию (GGAnimate)

#r #animation #gganimate

#r #Анимация #gganimate

Вопрос:

Я пытаюсь запустить анимацию — построение линии (geom_line) в R. Мои данные следующие:

   Date      BookToPrice   NumStk
   <yearmon>       <dbl>    <dbl>
 1 Dec 1989         -1   0.00442 
 2 Dec 1989         -0.9 0.000492
 3 Dec 1989         -0.8 0.000492
 4 Dec 1989         -0.7 0       
 5 Dec 1989         -0.6 0       
 6 Dec 1989         -0.5 0       
 7 Dec 1989         -0.4 0.000492
 8 Dec 1989         -0.3 0.000492
 9 Dec 1989         -0.2 0.000492
10 Dec 1989         -0.1 0       

  

Я строю геометрическую линию, используя следующую последовательность кода:

 q<-ggplot(data = data.pb, mapping = aes(x = BookToPrice, y = NumStk))  
  
  geom_line(size = 1.5)  

  transition_states(Date, transition_length = 4, state_length = 1)  
  
  view_follow(fixed_x = TRUE, fixed_y = TRUE)  

  labs(title = 'Distribution through time : {closest_state}')
## use current_frame if using transition_manual


animate(plot = q, 
        nframes=length(unique(data.pb$Date)),
        detail = 2,
        fps = 2,
        width = 1200,
        height = 1000,
        end_pause = 8,
        renderer = gifski_renderer("anim.gif"))

  

Все работает отлично, никаких проблем с кодом здесь нет.

Что я хочу сделать, так это добавить несколько статических строк… итак, скажем, показано распределение даты x — я хочу оставить это в качестве ссылки на графике. Затем для даты y и так далее…

Возможно ли объединить несколько диаграмм geom_line, но запустить анимацию на отдельной диаграмме?

Я попытался добавить дополнительную строку, просто чтобы проверить, могу ли я добавить строку или нет, но это дает мне только отдельный кадр и просто предупреждения при обработке.

Итак:

  1. Как мне добавить статическую строку в анимацию?
  2. Статическая строка появляется, когда анимация обработала определенную дату…

Большое спасибо!

Ответ №1:

Мне удалось найти обходной путь (и он ужасный). Я создал дополнительные временные ряды с той же датой и значением 0 перед датой, когда я хочу, чтобы появился график, и статические значения публикуются. Это показывает сюжет — в статическом виде — но выглядит не очень красиво.

Если я найду правильный ответ, вернусь сюда и добавлю.