19

浏览在调用渲染动画序列gganimate时可以设置的选项gg_animate(),似乎没有更改帧标题的选项,以便让观察者更清楚帧所基于的参数是什么。

换句话说,假设frame = year在一个层中:我如何使框架的标题成为year: ######## 是当前框架的年份?我错过了什么还是gganimate图书馆的限制?

您将如何通过解决方法获得相同的结果?谢谢你的建议。

4

1 回答 1

28

gganimateAPI的更新

gganimate已使用新的 API重新设计。现在可以使用下面的代码对框架标题进行动画处理。state_length并设置在给定“状态”(即此处的给定值)和状态之间转换transition_length所花费的相对时间量。意味着当在状态之间转换时(在这种情况下是整数值),应该显示最接近当前转换值的值(例如,因为可以是 4、6 或 8,所以介于 4 和 5 之间的值是显示为 4,介于 5 和 6 之间的值显示为 6):cylclosest_statecylcylcyl

p = ggplot(mtcars, aes(wt, mpg)) + 
  geom_point() + 
  transition_states(cyl, transition_length=1, state_length=30) +
  labs(title = 'Cylinders: {closest_state}')

animate(p, nframes=40)

gganimate可以github通过运行 安装devtools::install_github('thomasp85/gganimate')

插图有更多关于如何使用新 API 的细节。

原始答案

框架的子集值附加到任何预先存在的标题。因此,您可以添加带有解释性文本的标题。例如:

library(gganimate)

p = ggplot(mtcars, aes(wt, mpg, frame=cyl)) + geom_point() + 
    ggtitle("Cylinders: ")

gg_animate(p)

正如您在下面的 GIF 中看到的,前缀“Cylinders:”现在添加到标题中的值之前cyl

在此处输入图像描述

于 2016-05-23T17:50:09.883 回答