es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Mueva las Islas Canarias y haga zoom en la península en un mapa de ggplot con r y sf.

He intentado mover las geometrías de las Islas Canarias hacia la península para que se vea el mapa de España en una escala más grande y represente información por provincias.

He empezado desde el shapefile de esta ubicación de ESRI.

https://www.arcgis.com/home/item.html?id=83d81d9336c745fd839465beab885ab7

El código utilizado es este, necesitas ggplot2 y sf.

“`{r}
geoprovincias <- st_read("ruta/ProvinciasETRS89_30N.shp")

geopenínsula <- geoprovincias[!geoprovincias$CCAA=="Canarias",]
geocanarias <- geoprovincias[geoprovincias$CCAA=="Canarias",]

crs <- st_crs(geopenínsula)

geocanariasco <- geocanarias %>%
st_transform(crs) %>%
st_geometry()
geocanariasco <- geocanariasco + c(5, 7)

geocanarias <- geocanarias %>%
st_set_geometry(geocanariasco) %>%
st_set_crs(crs)

geoprovincias <- rbind(geopenínsula, geocanarias)

mprovincias <- geoprovincias %>%
ggplot() +
geom_sf(
fill="white",
color="#1D1D1D",
size=0.5
) +
theme_void()
mprovincias
“`

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El código de arriba toma un archivo shapefile de las provincias de España y separa las Islas Canarias del resto de las provincias. Luego, transforma la geometría de las Islas Canarias y las mueve hacia la península. Finalmente, combina los conjuntos de datos de las provincias y las traza usando ggplot2 para generar un mapa de España.

    Para mover las Islas Canarias hacia la península, el código utiliza el operador + para sumar un vector de valores a las coordenadas de los objetos geométricos en el conjunto de datos geocanarias. En este caso, el vector es c(5, 7), que representa la cantidad de longitud y latitud que se va a sumar respectivamente. Al agregar valores a las coordenadas, la geometría de las Islas Canarias se mueve efectivamente en el mapa.

    Después de transformar y mover la geometría de las Islas Canarias, el código utiliza rbind para combinar los conjuntos de datos de las provincias en la península y las Islas Canarias en un solo conjunto de datos llamado geoprovincias. Este conjunto de datos se traza luego usando ggplot2 para generar un mapa de España con una escala más grande para la península.

    Ten en cuenta que el código asume que el archivo shapefile de entrada se encuentra en la ruta especificada y que los paquetes necesarios ya están instalados y cargados.

Comments are closed.