使用ggplot和R中的地图数据创建动画

使用ggplot和R中的地图数据创建动画,r,animation,ggplot2,R,Animation,Ggplot2,我有一个州每个县的每周数据。我想创建一个动画,每周循环显示绘制在地图上的数据,颜色表示强度和/或与前一周的变化 library(ggplot2); library(animation); library(maps); library(plyr) county <- map_data("county") wy <- county[county$region =="wyoming",] l = length((wy$subregion)) #Add random variales

我有一个州每个县的每周数据。我想创建一个动画,每周循环显示绘制在地图上的数据,颜色表示强度和/或与前一周的变化

library(ggplot2); library(animation); library(maps); library(plyr)

county <- map_data("county")

wy <- county[county$region =="wyoming",]

l = length((wy$subregion))
#Add random variales
wy <- mutate(wy, a = runif(length(region)), 
             b = runif(length(region)), 
             c= runif(length(region)))

test <- function(j){             
ggplot(wy, aes(long, lat, group = group))+ 
  geom_path() + 
  geom_polygon(aes_string(fill=j))
}

test("c")
test("b")


v = c("a","b","c"))

oopt <- animation::ani.options(interval = 0.1)

FUN2 <- function() {
  lapply(v, function(i) {
    test(i)
    animation::ani.pause()
  })
}
FUN2()

saveHTML(FUN2(), autoplay = FALSE, loop = FALSE, verbose = FALSE, outdir = "images/animate/new",
 single.opts = "'controls': ['first', 'previous', 'play', 'next', 'last', 'loop', 'speed'], 'delayMin': 0")
库(ggplot2);图书馆(动画);图书馆(地图);图书馆(plyr)
县
图书馆(ggplot2);图书馆(动画);图书馆(地图);图书馆(plyr)

县有一看:了解更多关于如何设置动画。你现在得到了静态图,制作一个函数,将数据馈送到静态图。谢谢泰勒。。看了一眼,但不太清楚。谢谢你在你的衣服上试穿一下。请在添加以下内容后回答您自己的问题:
print(test(i))
而不是
test(i)
FUN2
中,如果可以的话,现在请勾选复选标记:)努力完成和学习(我确信)的好工作是你自己的一大负担。
library(ggplot2); library(animation); library(maps); library(plyr)

county <- map_data("county")

wy <- county[county$region =="wyoming",]

l = length((wy$subregion))
#Add random variales
wy <- mutate(wy, a = runif(length(region)), 
             b = runif(length(region)), 
             c= runif(length(region)))

test <- function(j){             
  ggplot(wy, aes(long, lat, group = group))+ 
    geom_path() + 
    geom_polygon(aes_string(fill=j))
}

test("c")
test("b")

wy$1 <- wy$a

oopt <- animation::ani.options(interval = 0.1)

FUN2 <- function() {
  v = c("a","b","c")
  lapply(v, function(i) {
    print(test(i))
    ani.pause()
  })
}
FUN2()

saveHTML(FUN2(), autoplay = FALSE, loop = FALSE, verbose = FALSE, outdir = "images/animate/new",
         single.opts = "'controls': ['first', 'previous', 'play', 'next', 'last', 'loop', 'speed'], 'delayMin': 0")