我试图在动画中绘制很多散点图,但很多情节只显示一个空图。每次运行代码/调整范围时,它也会有所不同。 一些情节确实有效,它们都应该是这样的:
这是我的代码:
library(ggplot2)
library(animation)
begintime <- min(dfL$time)
endtime <- max(dfL$time)
beginRange <- begintime
endRange <- begintime + 10
dateRangeBetween <- function(x,y){dfL[dfL$time >= x & dfL$time <= y,]}
saveHTML({
for (i in 1:20) {
dfSub <- dateRangeBetween(beginRange, endRange)
ggScatterplot = ggplot(data = dfSub, aes(x = UTM_WGS84.Longitude, y = UTM_WGS84.Latitude)) + ggtitle("Coordinates") + xlab("Longitude") + ylab("Latitude") + theme(legend.position = "top") + geom_point()
beginRange <- beginRange + 10
endRange <- endRange + 10
print(ggScatterplot)
}
}, img.name = "coordinatesplots", imgdir = "coordinatesplots", htmlfile = "coordinatesplots.html",
outdir = getwd(), autobrowse = FALSE, ani.height = 400, ani.width = 600,
verbose = FALSE, autoplay = TRUE, title = "Coordinates")
这是我的数据框的一个例子:
track time UTM_WGS84.Longitude UTM_WGS84.Latitude
1 1 2015-10-14 23:59:55.711 5.481687 51.43635
2 1 2015-10-14 23:59:55.717 5.481689 51.43635
3 1 2015-10-14 23:59:55.723 5.481689 51.43635
4 1 2015-10-14 23:59:55.730 5.481690 51.43635
5 1 2015-10-14 23:59:55.763 5.481691 51.43635
有人可以帮帮我吗?
答案 0 :(得分:0)
您的绘图为空的最可能原因是您的data.frame本身的子集是空的。
我认为(很难说没有看到您的完整数据)您的问题是您没有按正确的时间增加。默认情况下,向日期添加数字将添加若干秒。我怀疑你的整个数据范围都不到10秒,因此只有第一个图表会显示一些数据。之后,时间范围将超出您的数据范围。
如果是这种情况,只需将+ 10
更改为您要添加的实际时间。 1:1秒,0.1:十分之一秒等......