Итак, я попробовал различные коды, чтобы построить zip-код, используя файл формы, и анимировать его с течением времени.Я не хочу, чтобы точки с почтовым индексом, я хочу границы, и поэтому я использовал файл формы, загруженный из переписи.Я хотел бы представить их по некоторой ценности и посмотреть, как все изменилось с течением времени.Я не хочу вывод GIF.Было бы хорошо иметь ползунок или кнопку воспроизведения для анимации во времени.
Я почти хочу, чтобы это было похоже на тепловую карту, интерактивную со временем, а также, когда я наводил указатель мыши на почтовые индексы, он долженпредоставьте мне ценность.Пока что ни один из них не выглядит визуально привлекательным.
Я надеялся, что кто-нибудь сможет либо улучшить мой код, либо дать хорошее предложение относительно того, как я могу построить функцию ZIP-кода (НЕ COUNTY или STATE) и построить график с течением времени.
IЯ использовал tmaps, ggplot, choroplethrZip, plotly (у них нет графиков уровня почтового индекса?)
У меня есть несколько результатов, но я не могу точно получить то, что хочу.
Вот чтоУ меня так далеко:
library(choroplethr)
library(choroplethrZip)
library(sf)
library(ggplot2)
library(tmap)
library(tmaptools)
library(leaflet)
library(dplyr)
library(gganimate)
library(gifski)
library(transformr)
library(ggmap)
library(rgdal)
library(usmap)
# create a quick dummy data with dates with zip
options(scipen = 999)
data(df_pop_zip)
z <- df_pop_zip
z <- z[-c(4381:32989),]
time<-rep(1:24, 365)
dates<-seq(as.Date("01012005",format="%d%m%Y"),as.Date("31122005",format="%d%m%Y"),by=1)
TimeFrame<-data.frame(time)
TimeFrame$dates<-rep(dates,each=24)
dz <- data.frame((date = rep(dates,each=4)))
colnames(dz)[1] <- "date"
z$date <- dz$date
zz <- z
# now I have data with region,value,date
# next plot data at a zip code level and animate
mymap <- st_read("D:\\DOWNLOADS\\zip\\tl_2017_us_uac10.shp",stringsAsFactors = FALSE)
str(mymap)
df_pop_zip$GEOID10 <- df_pop_zip$region
zz$GEOID10 <- zz$region
map_and_data <- inner_join(mymap,zz)
## USING GGPLOT
p <- ggplot(map_and_data) + borders("state") + geom_sf(aes(fill = value)) +coord_sf(xlim = c(-150, -50), expand = FALSE) +
scale_fill_gradient(low = "#56B1F7", high = "#132B43") + transition_time(date) + labs(title = "Date: {frame_time}") + shadow_mark(alpha = 0.3)
p
# the above code kinda gets be what I want but I don't think it accuratly represents what I want.
## USING TMAPS
x <- tm_shape(map_and_data) + tm_polygons("value" , id = "GEOID10", palette = "Greens") # + tm_facets(by = "date")
tmap_mode("view")
tmap_last()
# The above result is interactive, but not sure how to add time filter animation
Используя ggplot, я получаю что-то там, где он анимируется с течением времени (дата), но без ручного взаимодействия.Кроме того, сборщик мусора.
Tmaps обеспечивает хороший график, но не может анимировать сверх даты.
Я даже открыт для других пакетов и предложений.Все, что будет хорошо взаимодействовать с течением времени для почтового индекса с уровнем границ, будет хорошо.
PS: Я повторяю, я не хочу видеть какой-либо государственный уровень или уровень страны.Я знаю, что есть тысячи примеров.: P
Спасибо, что уделили время <3 </p>