r ggplot2 ggmap choropleth choroplethr

Haciendo un código postal choropleth en R usando ggplot2 y ggmap



choroplethr (1)

Gracias por usar choroplethr , y lamento que la desaprobación de zip_map te zip_map causado problemas. He movido todas las funciones relacionadas con ZIP a un paquete separado llamado github.com/arilamstein/choroplethrZip .

La antigua versión de choroplethr representaba los ZIP como diagramas de dispersión, no como coropletas. Hacerlos como coropletas adecuadas requería un mapa que fuera demasiado grande para CRAN (~ 60 MB), por lo que solo está disponible a través de github.

La página de github que vinculo arriba tiene 3 viñetas. Básicamente, la función zip_choropleth debe hacer exactamente lo que quieres, y funciona como todas las demás funciones de choroplethr . Desea utilizar el state_zoom para ampliar los estados de la costa este:

# use the devtools package from CRAN to install choroplethrZip from github install.packages("devtools") library(devtools) install_github(''arilamstein/[email protected]'') library(choroplethrZip) data(df_pop_zip) # ec = east coast ec_states = c("maine", "new hampshire", "massachusetts", "rhode island", "connecticut", "new york", "new jersey", "delaware", "maryland", "virginia", "north carolina", "south carolina", "georgia", "florida", "pennsylvania", "district of columbia", "vermont", "west virginia") zip_choropleth(df_pop_zip, state_zoom = ec_states, title = "2012 ZCTA Population Estimates", legend = "Population") + coord_map()

El mapa resultante es esencialmente ilegible porque las cremalleras son tan pequeñas que todo lo que puede ver son los bordes. Si quieres eliminar los bordes, prueba esto:

choro = choroplethrZip::ZipChoropleth$new(df_pop_zip) choro$prepare_map() data(zip.regions) choro$legend = "Population" ec_zips = zip.regions[zip.regions$state.name %in% ec_states, "region"] ec_df = choro$choropleth.df[choro$choropleth.df$region %in% ec_zips, ] ec_plot = choro$render_helper(ec_df, "", choro$theme_clean()) + ggtitle("2012 ZCTA Population Estimates") ec_plot + coord_map()

En el futuro, podría agregar una opción que facilite la representación de los mapas sin bordes. Pero por ahora (versión 1.3.0) esta es la forma más fácil que puedo ver para hacerlo, y es básicamente lo que hago entre bastidores para renderizar los mapas zip nacionales, que a su vez se representan sin fronteras.

Tenga en cuenta que coord_map solo fuerza una proyección de mercator.

Estoy tratando de hacer una coropleta de datos muy simples, y es una especie de dolor en el cuello. Tengo los siguientes códigos postales en el este de los Estados Unidos. Esto se compone de datos, pero tienes la idea.

Zip Freq 11101 10 10014 15 11238 400

etc. para unas 100 filas. Los valores de Freq van de 0 a 1000, y estos son los que me gustaría usar para determinar el color de cada código postal. También me gustaría, idealmente, que el mapa se centre en el este de los EE. UU.

Quiero hacer un choropleth con estos datos y cada código postal, pero no puedo averiguar cómo importar shapefiles de código postal. He intentado este tutorial pero obtuve un error en el paso fortify () que no puedo superar. No estoy seguro de si el método de ese tutorial es la mejor manera de hacerlo.

ggplot2 parece venir con el estado y el condado, pero no puedo averiguar cómo mapear por código postal. (Eventualmente, voy a hacer un mapa por zona censal, pero ahora solo quiero aprender a usar shapefiles para códigos postales y este simple conjunto de datos)

Todos los recursos que he encontrado para funciones de uso de choroplethr que ahora están en desuso. Pasé horas persiguiendo mi cola en un esfuerzo por usarla, y estoy muy frustrado, por lo que cualquier ayuda sería muy apreciada.