Mapa de España con plotly

Francisco / Pachu
3 min readFeb 1, 2022

Son muchos los tutoriales para la representación del mapa de España con matplotlib, pero como a todos nos llegan a aburrir los mapas estáticos y al no encontrar nada con plotly hice este breve y sencillo tutorial. ¡Cuánta belleza y magia que nos regala plotly.express! 😄 😄 ¡allá vamos!

Es extrapolable a cualquier país, región o área geográfica.

Mapa de España con matplotlib (izquierda) y plotly.express (derecha)

Para realizar el experimento se requiere la instalación de las librerías: numpy, pandas, geopandas, plotly.express y requests. ¿No te apetece? Usa directamente un docker creado para el experimento:

docker pull pachums/data-science-ml:v2.3

Vamos a realizar dos mapas de España con los límites provinciales, en el primer caso representaremos datos de ciudades y en el segundo datos de las provincias.

Mapa de España por ciudades

Comenzamos obteniendo los los límites geográficos de las provincias a partir de un geojson.

📍 Creamos los datos que queremos representar, para las ciudades usaremos tres variables: nombre, longitud y latitud guardadas en un DataFrame.

Pasamos directamente a la visualización, a partir de scatter_mapbox representamos las ciudades o puntos de interés. En update_layout creamos el entorno cartográfico y añadimos los límites geográficos, ancho de las líneas, color, zoom, etc.

Ya tenemos el resultado del Mapa de España por ciudades o puntos de interés, interactivo, dinámico y con gran capacidad de representación, un bonito mapa pero… lo precioso de plotly está a punto de llegar con las regiones.

Mapa de España con puntos de interés (ciudades)

Mapa de España por provincias

Comenzamos guardar los datos de geométricos de las regiones de un archivo geojson a un GeoPandasDataFrame.

Ya tenemos las regiones, damos unos valores aleatorios entre 1 y 1000 para cada provincia. En este punto añadiríamos el valor que queremos representar: número de manzanas consumidas, % de extraterrestres 👽, cantidad de ciclopes, etc.

Pasamos a representar el mapa con choropleth_mapbox, con las geometrías, los datos y otras variables que ni analizamos ya que son muy intuitivas.

¡Aquí tenemos el Mapa de España por provincias! Muévete por encima de ellas, visualiza sus datos y compara, como me encantan los mapas interactivos, gracias plotly.

¡Amistades canarias! Ahí estáis, no os preocupéis, es todo cuestión de poner o quitar un poco de zoom 😉

Con el archivo apropiado de los límites geográficos se puede hacer para otros países, a nivel municipal y cualquier cosa que se os pase por la mente, pero sin irnos fuera del planeta, a eso le queda un poco.

Espero que os sea de utilidad, está muy simplificado así que os invito a ahondar en las múltiples funcionalidades, cualquier cosa no dudéis en preguntar, os dejo el repositorio de GitHub, un abrazo! 😍

--

--