时空可视化R.

时间:2015-02-18 05:38:45

标签: r datetime plot

我有包含记录数,纬度,长期和日期的数据。我的目标是使用Google Viz或Shiny来创建带有时间序列滚动条的地图。以下是我在R。

中的data.frame的示例
  date lat lon num
[1,] 14785 33.47350 -82.01051  174
[2,] 14794 32.75549 -97.33077  904
[3,] 14680 33.74900 -84.38798    7
[4,] 14762 42.90261 -78.74457    1
[5,] 14762 42.01114 -87.84062    1
[6,] 14767 36.37285 -94.20882  152

到目前为止,我已经能够生成以下所有事件的地图,但它不包括时间部分。

library(maps)
map('state',plot = TRUE,col = "grey",fill = F)
points(x = toy$lon, y = toy$lat, col = toy$recs)
title("Events Across America")

我有兴趣使用时间序列滚动条生成交互式地图,类似于此图:http://shiny.rstudio.com/gallery/google-charts.html

我已经使用{spatial}和{spacetime}图书馆来创建一个时空对象,但我不知道如何用滚动条可视化它。这可能吗? GoogleViz或Shiny中的任何内容都会很棒。

#### Toy example: ####
toy <- as.data.frame(toy)
toy <-  toy[order(toy$date,decreasing = F),]
coordinates(toy) <- c("lat","lon")
sp <- SpatialPoints(toy)

# Building a spatial data frame:
sp.df <- SpatialPointsDataFrame(sp, data.frame(recs = toy$recs,date = toy$date))
summary(sp.df)

# Building a Space-time data frame. 
time <- as.POSIXct(toy[["date"]], tz = "GMT")
# to build a space-time object
# data1 has to have sp_n * time_m = n*m rows corresponding to the observations
data1 <- data.frame(recs = rpois(nrow(toy)^2,100))
sptdat <- STFDF(sp,time,data1)

1 个答案:

答案 0 :(得分:0)

我使用了plotKML包(https://cran.r-project.org/web/packages/plotKML/index.html)来可视化我的STIDF点对象。 plotKML函数可以读取使用spacetime包创建的对象。它创建了一个kml文件,可以在Google Earth中读取。 Google地球有一个时间滑块,您可以使用它轻松评估您的时空数据。您可以使用栅格和矢量数据。