Подтвердить что ты не робот

R Плоская анимация - начальный кадр

Как я могу сделать сюжетную анимацию на конечном кадре. То есть, когда график загружается, я хотел бы, чтобы он загружался на этот последний кадр (например, 2017). По умолчанию он загружается в первый кадр (например, 1960). Позже, когда пользователь нажимает кнопку воспроизведения, анимация должна начинаться с первого кадра (например, 1960).

 animation_opts(frame = frame, transition = 0, redraw = FALSE) %>% 
  animation_slider(currentvalue = list(prefix = "Year"))
4b9b3361

Ответ 1

Это не полный ответ, но поскольку ответа еще нет, я решил опубликовать лучшее, что я могу сделать, и, возможно, у кого-то есть идеи, чтобы улучшить оттуда?

Существует функция animation_slider(), которая принимает аргумент active, который может установить активный кадр на ползунке. Однако это не изменяет активный кадр на графике... Поэтому идея состоит в том, чтобы добавить фрейм 0 (как также упоминается Sixiang.Hu в комментариях) и объединить его с активным фреймом. Недостатком этого решения является, очевидно, что всегда есть рамка 0, когда вы возвращаетесь назад на слайдер анимации.

# sample data
df = data.frame(a=seq(1,20),b=seq(1,20),frame=seq(1,20))

# add initial frame
init_frame = 10
df = rbind(df[df$frame==10,],df)
df$frame[1]=0

library(plotly)
plot_ly(df,x=~a,y=~b,frame=~frame) %>% animation_slider(active=init_frame)