【问题标题】:How do I save a GIF image from the animate function in R?如何从 R 中的 animate 函数中保存 GIF 图像?
【发布时间】:2019-07-10 23:07:10
【问题描述】:

我正在使用 R 中的 animate 函数成功地创建了我需要的动画,并且它完美地显示出来了。但是,我无法将输出(在下面的代码示例中称为 TodayMotion)保存在文件(例如 Gif89a)中,以便分发/存储动画。这听起来是一个简单的问题,但我一直无法解决它。

我尝试了多种解决方案,包括无法在我的 R 版本上加载的 ImageMagick 包。还有 save.gif 和 Magick 包的写入命令,它说它无法识别该文件。只是为了澄清一下,我尝试了 'magick::image_write(TodayMotion, path="magicksaveOption.gif")' 和 'anim_save("TodayMotion.gif", TodayMotion)' 都没有工作。

ggm <- ggmap(UK) +
geom_point(data = Origin1,
aes(x = Long, y = Lat,
colour = group),
size = 2, alpha = 0.8) +
transition_time(time) +
shadow_wake(wake_length = .1)


TodayMotion <<- animate(ggm, height = 1500, width = 1500, fps = 
20, duration = 20, start_pause = 10, end_pause = 20,  rewind = T)

PS。在 TodayMotion 环境中被描述为“gif_image 类”

我想在我想要的目录中保存一个保存的 gif(gif89a,因为它是动画的)。 (下图截取自屏幕)

【问题讨论】:

  • 请您生成整个代码,以便您的示例可以被复制,好吗?
  • 我怀疑您的完整代码相当复杂。更好的是生成一个简单的测试示例,使用简短的代码来说明您的问题。
  • 代码相当复杂,并不是真正的问题,动画完美地工作并且完全按照它所说的那样工作。但是我剩下的是 TodayMotion 文件,但我无法保存它。就是这么简单,我就是想把它保存成一个可以发给别人的格式,想必是可以存储动画的gif。我已经尝试了几个小时,灵魂可能很明显,但我找不到。
  • 在此处查看答案及其评论:stackoverflow.com/questions/51440496/…
  • 这仅适用于 gganimate,不适用于我尝试过的动画。不过还是谢谢。这是一个令人费解的问题,最初看起来很简单,您希望有一个自动解决方案,但我找不到。

标签: r animated-gif


【解决方案1】:

您可以右键单击查看器窗格 I Rstudio 并选择保存。 默认保存选项是 .gif

【讨论】:

  • 是的,但我需要代码中的解决方案,因为这是一个较大程序的一部分,一个文件必须在一个固定的目录中结束。
【解决方案2】:

最后,由 Stephane Laurent 提供的答案是 anim_save(DFCFileName, TodayMotion)。当没有其他工作时,这样做了。我会告诉你结果,但大小限制是 2MB,这是 19MB!您可以使用 TweenR 包进行插值制作一些出色的动画,然后制作动画。 TweenR 确实可以消除任何抖动并提供出色的效果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-13
    • 2019-05-26
    • 2012-07-24
    • 1970-01-01
    • 1970-01-01
    • 2020-11-28
    相关资源
    最近更新 更多