问题描述
我正在使用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 (将#修改为@)