Использование gganimate для демонстрации эксперимента - PullRequest
2 голосов
/ 16 марта 2020

Я пытаюсь продемонстрировать сокращенную версию эксперимента для презентации. У меня есть набор зарегистрированных задержек с отмеченной отметкой времени, когда они были записаны во время эксперимента. Я хочу использовать geom_point, чтобы переместить точку вдоль оси x на линии y = 0 и сделать паузу в каждой временной точке записи, двигаясь вверх к зарегистрированной задержке, прежде чем вернуться обратно к линии y = 0.

Является ли gganimate подходящим пакетом для этого, или я должен рассмотреть просто вручную анимировать это в другой программе? Ниже прилагается то, что у меня сейчас есть.

require(tidyverse)
require(gganimate)

df <- data.frame(Time = c(0.99,1,1.01,1.99,2,2.01,2.99,3,3.01,3.99,4,4.01,4.99,5,5.01), 
                 Latency = c(0,10,0,0,8,0,0,6,0,0,2,0,0,2,0))

anim <- df %>% ggplot(aes(Time, Latency)) + 
  geom_point(aes(color = Latency))+
  transition_reveal(Time)+
  ease_aes()

anim

1 Ответ

1 голос
/ 17 марта 2020

Я думаю, вы можете сделать это с помощью gganimate. Это то, что ты искал? (просто изменяя функцию gganimate)

library(gganimate)
#> Loading required package: ggplot2

df <- data.frame(Time = c(0.99,1,1.01,1.99,2,2.01,2.99,3,3.01,3.99,4,4.01,4.99,5,5.01), 
                 Latency = c(0,10,0,0,8,0,0,6,0,0,2,0,0,2,0))

ggplot(df, aes(Time, Latency)) + 
  geom_point(aes(color = Latency)) +
  transition_states(Time) 

Создано в 2020-03-16 пакетом представлением (v0.3.0)

...