Mapas regionales
El presente documento interno es para la realización de mapas regionales. Código reproducible con las librerĆas correspondientes.
LibrerĆas:
Leemos una base de datos de los mapas disponible en mi GitHub.
# Base de datos
mx <- st_read("https://raw.githubusercontent.com/JuveCampos/MexicoSinIslas/master/Sin_islas.geojson",
quiet = T)Seleccionamos los estados de la Región de interés (en este caso, los estados de la Región Sur Sureste).
# Region
rss <- c("CAMPECHE",
"CHIAPAS",
"GUERRERO",
"OAXACA",
"PUEBLA",
"QUINTANA ROO",
"TABASCO",
"VERACRUZ DE IGNACIO DE LA LLAVE",
"YUCATAN")Generamos una variable de clasificación:
# Variable de región
mx$region <- ifelse(test = mx$ENTIDAD %in% rss,
yes = "Región Sur Sureste",
no = "Resto del paĆs")Generamos una paleta de colores, donde sea morado para la región de interĆ©s y gris para la que no lo es:
Construimos el mapa:
# Mapa
leaflet(mx) %>%
addProviderTiles("CartoDB.Positron") %>%
addPolygons(color = "white",
dashArray = c(1,1),
fillOpacity = 0.85,
weight = 2,
fillColor = pal(mx$region)) %>%
addLegend(title = "Leyenda",
position = "bottomright",
colors = "purple",
labels = "Región<br>Sur-Sureste"
)Ahora, si quisieramos que cada entidad de la región tuviera un color distinto y personalozado, harĆamos lo siguiente:
Primero, generamos una nueva variable en donde todos los estados que pertenezcan a la región mantienen su nombre, y los que no solo entran en un grupo de āResto del paĆsā:
# Multiples estados
mx$edoMultiple <- case_when(mx$region == "Región Sur Sureste" ~ str_to_title(mx$ENTIDAD),
mx$region != "Región Sur Sureste" ~ "Resto del PaĆs")DespuĆ©s generamos la paleta, recordando que los estados se ordenan en orden alfabĆ©tico:
# Paleta
pal2 <- colorFactor(palette = c(
"#928cbd", #Campeche
"#6d5f99", #Chiapas
"#9f8f12", #Guerrero
"#3691a4", #Oaxaca
"#ccb22b", #Puebla
"#27697b", #QROO
"gray", #Resto de estados
"#5faa85", #Tabasco
"#87c6c6", #Veracruz
"#c0a521"), #YucatƔn
domain = mx$edoMultiple)Y finalmente armamos el mapa
# Mapa
leaflet(mx, options = leafletOptions(zoomControl = FALSE)) %>%
addProviderTiles("CartoDB.Positron") %>%
addPolygons(color = "white",
dashArray = c(1,1),
fillOpacity = 0.95,
weight = 2,
fillColor = pal2(mx$edoMultiple))Código eliminado:
# %>%
# addLegend(title = "Entidades<br>Región Sur Sureste",
# position = "bottomright",
# opacity = 1,
# pal = pal2, values = mx$edoMultiple[mx$edoMultiple != "Resto del PaĆs"]
# #colors = "purple",
# #labels = "Región<br>Sur-Sureste"
# )Aplicando post-producción en Keynote finalmente se ve asĆ: