Centroides y shapefiles de municipios de España para mapas

Actualmente estamos trabajando en un proyecto de QlikSense utilizando la extensión QlikMaps para representar en capas de un mapa indicadores sobre áreas geográficas. Para visualizar la información es necesario tener correctamente parametrizadas las coordenadas y contornos de todas las áreas geográficas que se vayan a utilizar. Los centroides y contornos de Comunidades autónomas y provincias se pueden encontrar de forma relativamente sencilla, pero para las poblaciones o municipios no hay absolutamente nada.

Shapefiles municipios españa

Desde el portal GADM podemos descargar una base de datos shapefile con las coordenadas de los contornos de todos los municipios de España, con el inconveniente de que es una BD antigua. Hasta donde hemos podido confirmar, es anterior al 2008, ya que hay pueblos que han cambiado de nombre o se han segregado de otros más grandes y aparecen unidos aun.

Para cargar los datos en QlikSense importamos los ficheros .shp a QGIS y generamos un .kml. Sin embargo, comprobamos que al cargar las áreas delimitadas por pares de coordenadas QlikSense no es capaz de correr con agilidad. Como solución, la extensión de mapas además de pintar un polígono por coordenadas, puede utilizar un código polyline. Para convertir las coordenadas a polylines utilizamos una librería gratuita de PHP, convertimos el KML a un XML más sencillo y generamos los códigos comprimidos. Podéis descargar el conversor en PHP desde aquí (nosotros los lanzamos en local utilizando un WAMP). Para validar que los polylines son correctos podéis utilizar esta herramienta de Google Utilidad codificadora de polilínea interactiva. Simplemente copiáis el código y la decodificáis. En caso de que una región tenga varios polígonos (por ejemplo la parte de Burgos dentro de Álava), para que QlikMaps lo pinte correctamente juntaremos los dos polylines con un “<br>” en medio (importante que vaya en minúsculas).

Como la BD de GADM no está actualizada, de los 8125 municipios de España no hemos conseguido los polígonos de 17 de ellos (un 99,76%). Los códigos de provincia y municipio están cruzados con las tablas del INE. Podéis descargar los ficheros con centroides y shapelines de España desde aquí:

Descargar Centroides y shapefiles de España
Comunidades autónomas <1MB
Provincias <1MB
Municipios (99,76% completo) 2MB
Códigos postales 2.4MB
Últ. actualización Nov-2017

Por ejemplo, el polígono que define el área de Alcorcón (Madrid) es el siguiente chorro de pares coordenadas:

-3.80271911621095,40.3633918762208,0 -3.80690407752991,40.3666038513184,0 -3.81053400039672,40.3639030456543,0 -3.81314897537232,40.3697967529298,0 -3.83468604087824,40.3961296081543,0 -3.83030104637146,40.4016304016113,0 -3.83774304389953,40.4031066894531,0 -3.8458130359649,40.3907318115234,0 -3.86770701408381,40.3780097961426,0 -3.8665120601654,40.3739585876466,0 -3.87787795066835,40.3730964660645,0 -3.87884902954102,40.3697280883789,0 -3.87064909934998,40.358684539795,0 -3.87086296081542,40.3532257080079,0 -3.86765193939208,40.3535194396974,0 -3.86675405502319,40.3468856811524,0 -3.85911393165589,40.3434371948243,0 -3.85418391227712,40.3305435180665,0 -3.84749698638917,40.3258628845216,0 -3.84681797027589,40.3241500854492,0 -3.8385949134826,40.3245315551758,0 -3.817715883255,40.3276824951173,0 -3.81699991226197,40.3307342529298,0 -3.79979109764098,40.3427543640137,0 -3.8047161102295,40.3530426025392,0 -3.79892897605896,40.3566513061524,0 -3.78781390190125,40.3587532043457,0 -3.80271911621095,40.3633918762208,0

Que podemos reemplazar por una elegante línea polyline:

enjuF~ueVaSbYzOtUyc@hOqcDreCka@kZgHnm@hlAlq@nnAxgChXmFjD`
fA`T`E~cAgr@ba@h@y@aSlh@sDpTwn@poAy]f\yh@tIgCkAkr@uRoaCaR
oCcjAqjBi_Ax]qUec@cLodA_\d|A

En el mapa quedaría de la siguiente forma:

Centroides y shapelines de municipios de España para mapas

Etiquetas:

Suscríbete a nuestro Feed para recibir las últimas novedades de diseño web, diseño gráfico y programación

Dejanos tu Comentario

Nombre: (Requerido)

E-Mail: (Requerido)

Sitio WEB:

Comentario:

What is 11 + 10 ?
Please leave these two fields as-is: