我有10个纬度和长点。使用下面的代码,我可以绘制坐标,按顺序绘制箭头,输出显示导航顺序的gif文件。
到目前为止,我只能使用plot {graphics}函数执行此操作。因为arrow {graphics}和saveGIF {animation}似乎只能用于绘图功能。我想知道它是否可能这个更合适的库,如ggmap(编辑:我错误地说ggplot),googleVis等。
library(graphics)
library(animation)
lat <- c(34.083398,34.072467,34.030237,34.597334,34.587142,34.488386,33.443484,33.946902,33.062739,32.273711,32.272611)
lon <- c(-107.907107,-106.893156,-107.971542,-105.225107,-105.13397,-103.196355,-104.52479,-103.655698,-106.0156,-107.71744,-107.713977)
coords = data.frame(lat,lon)
x <- coords$lat ; y <- coords$lon
s <- seq(length(x)-1) # one shorter than data
saveGIF({
for(s in 1:length(x)){
plot(x,y)
arrows(x[s], y[s], x[s+1], y[s+1], col = 1:s)
}
})
答案 0 :(得分:2)
是的,只需记住将ggplot
来电包裹在print
中,以便产生输出。玩具示例:
data=data.frame(i=1:100,x=runif(100),y=runif(100))
saveGIF({for(i in 2:100){print(ggplot(data[1:i,],aes(x=x,y=y))+geom_point())}})
只需编写代码即可生成具有ggplot2
函数的每个框架并包装在print
中。你尝试了什么?