当不存在数据时,如何告诉gganimate在较大的时间段之间停止动画制作

问题描述

我正在使用gganimate绘制随时间变化的动物运动轨迹。该动物仅在一年中的某些时间出现在某些位置。我正在使用transition_states与geom_points跨时间进行动画处理,但是gganimate使其看起来好像数据中没有时间间隔。例如。即使将两个位置分开两周或更长时间,它也会从一个位置跳到另一个位置。

是否有办法让gganimate在不同的时间段之间(即是空白地图)不显示动画,而不是跳到下一个时间范围?

非常感谢您的帮助!

下面是我的代码的一部分:

library(ggmap)
library(gganimate)
library(maps)
library(ggplot2)
library(ggthemes)


#create bounding Box for my location
bBox <- myLocation <- c(-156.49,18.79,-154.98,20.30)
ggmap <- get_map(location = bBox,source = "google",maptype = "hybrid",zoom=10)
map = ggmap(ggmap)
map

#create dataframe

Date = c("2018-10-07","2018-10-14","2018-10-21","2018-10-28","2018-11-04","2018-11-11","2018-11-18","2018-11-25","2018-12-02","2018-12-09","2018-12-16","2018-12-23")
Longitude = c(19.19833,19.07667,19.50600,19.38500,19.55140,19.58500,19.19833,19.58500)
Latitude = c(-155.9483,-155.9567,-156.1567,-155.9867,-156.0506,-156.0320,-155.9483,-156.0320)
Station.Name = c("B","TT","F","C","Cage","VV","B","VV")

df = data.frame(Date,Longitude,Latitude,Station.Name)
str(df)
df$Date = as.Date(df$Date)
df$Station.Name = as.factor(df$Station.Name)

#create animation with gganimate
anim = map + 
  theme(text = element_text(size = 17))+
  geom_point(data = df,aes(x = Longitude,y = Latitude,group=interaction(Date,Station.Name)),color="#C75058",size=5) +
  labs(title = "Movement tracks",subtitle = "Date:{closest_state}",#this is gframe alone
       x = "Longitude",y = "Latitude")+
  transition_states(states = Date,transition_length = 3,# 3/4 of total time for transitions
                    state_length = 1) +  exit_disappear()
anim

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...