如何解决使用 tmap_animation 动画 RasterStack 图层
我一直在尝试使用 tmap::tmap_animation()
为栅格堆栈设置动画。每个图层覆盖的地理范围完全相同,但日期不同。输出的 GIF 动画是一帧多小图。
是否可以使用 tmap
创建 RasterStack 的 gif 动画?
我发现的唯一解决方法是:
- 将每一层转换为一个SF对象
- 为每个新的
sf
多边形对象提供一个属性“图层”,代表它从中拉出的 RasterStack 图层 -
rbind
将sf
个对象放在一起
完成上述步骤后,就可以绘制 gif 动画了,但是速度很慢。
解决方法
tmap
可以将光栅堆栈或光栅砖直接绘制为动画。最简单的方法是指定 tm_facets()
将每帧中的行数和列数限制为 1,这会阻止它创建小的倍数,例如:
library(raster)
library(tmap)
a <- raster(matrix(runif(100),10,10))
b <- raster(matrix(runif(100),10))
c <- raster(matrix(runif(100),10))
d <- raster(matrix(runif(100),10))
my_stack <- stack(a,b,c,d)
anim <- tm_shape(my_stack) + tm_raster() + tm_facets(nrow = 1,ncol = 1)
tmap_animation(anim,"anim_file.gif")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。