gganimate 创建重复图像

gganimate creating duplicate images

我有一个如下所示的数据框:

head(newnolarank)

    lon      lat week b
1 -90.06445 29.97121    1 9
2 -90.06704 29.96944    1 9
3 -90.07495 29.96567    1 9
4 -90.07448 29.96621    1 9
5 -90.16480 29.91240    1 9
6 -90.04797 29.94557    1 9

我的地图是从 ggmap

中的 get_map 函数生成的
map <- get_map("New Orleans, LA", zoom=10, color="bw")

我用geom_hex做了一个十六进制图

   p <- ggmap(map)+
coord_cartesian()+
stat_binhex(data=newnolarank,aes(x=lon, y=lat, alpha=0.5, frame = as.factor(b), cumulative = FALSE))+
scale_fill_continuous(low="#ACD9F4",high="#EC008C")+
theme(text=element_text(family="Avenir"), 
axis.line=element_blank(), 
axis.ticks = element_blank(), 
axis.text = element_blank(), 
plot.title=element_text(hjust=0.5),
 axis.title=element_blank())+
 ggtitle("Number of Sign Ups")

然后用gganimate做了gif。问题就在这里;即使 cumulative 设置为 false,生成的 gif 似乎有旧图像,这会产生覆盖十六进制或出现在奇怪区域的十六进制的不良效果。

gganimate(p, "gif1.gif", title_frame = TRUE)

你也可以在图例中看到覆盖。

奖励问题:如果有人能帮我摆脱出现的 alpha 传说,那也太好了。

忘记了 post 此处的解决方案:事实证明,时间数据集中有 NA,因此 gganimate 将它们添加到第一张图像和所有其他图像中。基本上这是一个功能而不是错误,从周列中删除 NA 解决了这个问题。