使用 gg_animate 创建 gif

Using gg_animate to create a gif

有没有办法在 R 中实现 gg_animate 来生成 gif。我已经创建了我的 ggmaps 并保存为 PDF。我想创建一个滚动浏览这些地图的动画,可能会在每个图像上停留 1 或 2 秒。有没有办法在 R 中执行此操作,或者我应该使用某种 gif 创建器 - 如果有任何建议?

非常感谢

2018 年 7 月更新gganimate() 经历了 rewrite and is now much improved。以前的 API 只能通过存档版本使用,不应期望与新版本一起使用。

有了新版本:

library(gapminder)
library(gganimate)

## standard ggplot2
ggplot(gapminder, aes(gdpPercap, lifeExp, size = pop, colour = country)) +
  geom_point(alpha = 0.7, show.legend = FALSE) +
  scale_colour_manual(values = country_colors) +
  scale_size(range = c(2, 12)) +
  scale_x_log10() +
  # Here comes the gganimate specific bits
  labs(title = 'Year: {frame_time}', x = 'GDP per capita', y = 'life expectancy') +
  transition_time(year) +
  ease_aes('linear')

生成更流畅的图形

原答案:

我发现 gganimate 包在这方面做得很好。

library(gapminder)
library(ggplot2)
theme_set(theme_bw())
p <- ggplot(gapminder, aes(gdpPercap, lifeExp, size = pop, color = continent, frame = year)) +
  geom_point() +
  scale_x_log10()

library(gganimate)

gganimate(p)

gganimate(p, "output.gif")

2016 年 12 月更新gganimate() 现在替换 gg_animate() 并添加 cowplot 作为依赖项(应该自动安装一次 Issue #32 已解决)。