IronViz #1 2017: Conectando Tableau a Shapefiles

Primer concurso IronViz del año, y a diferencia de los del año pasado donde cada uno tuvo una temática diferente – comida, música y política – esta vez la temática concreta de la visualización ha sido libre, con el único requisito de utilizar una de las nuevas funcionalidades de Tableau 10.2: la conexión a archivos geoespaciales (.shp, .kml, .geojson…).

El primer reto, y tal vez el más complicado, fue encontrar archivos geoespaciales Y datos adicionales para aportar valor a la visualización. En este sentido, mi primera idea era utilizar los archivos disponibles en la página web http://www.iucnredlist.org/ sobre especies amenazadas. El tema me parecía súmamente interesante, pero aparte de los mapas, la página web u otras páginas que he consultado no disponen de datos que sustenten la visualización. Varios intentos más de buscar archivos espaciales + datos de apoyo corrieron la misma suerte, así que decidí cambiar el enfoque de la visualización e ir hacia algo de primeras más sencillo en cuanto a la búsqueda de información, pero con el suficiente nivel de detalle como para que resultara interesante.

Así que finalmente me decidí por centrarme en un tema en el que supiera seguro que podría encontrar shapefiles y datos que aportasen valor adicional. El Instituto de Estadística de la Comunidad de Madrid permite la descarga de shapefiles con las delimitaciones territoriales de toda la Comunidad Autónoma, y la web del Ayuntamiento de Madrid ofrece información demográfico y de estructura de la población a nivel tanto de distrito y de barrio ¿Por qué no combinar ambas fuentes y crear una visualización de Madrid distrito a distrito y barrio a barrio?

Tras decidir el tema vino el segundo reto, y es la general mala estructura de archivos de datos en España. La información por barrio viene en un archivo diferente para cada distrito. Es decir en total 21 archivos con el siguiente aspecto:

Así que lo primero de todo había que hacer una aburrida labor de organización y limpieza de los diferentes archivos. La cual realicé parcialmente de forma manual y en parte utilizando Alteryx. Además, decidí que no era sólo interesante mostrar la información barrio a barrio, sino permitir al usuario cambiar la visualización para ver toda la información por barrio o distrito cambiando entre ambas vistas a través de un parámetro, con lo cual decidí utilizar un segundo archivo geoespacial y incluirlo como una conexión adicional. Este es el aspecto de las distintas bases de datos que he utilizado y como las he unido en Tableau:

Tercer reto: problemas en la unión de los datos generales con el shapefile de distritos debido a varios acentos en el nombre del distrito. Por alguna razón Tableau no identificaba correctamente algunos caracteres (cuando normalmente si lo hace, tal vez sea un problema sólo con shapefiles que se solucione en el futuro). Así que en lugar de utilizar el nombre del distrito, y ante la falta de un identificador numérico en el archivo global de datos para cada distrito, utilicé un cálculo en la unión para crear dicho campo con la función CASE:

Debido a la utilización de distintos archivos de datos de la web del Ayuntamiento de Madrid y al unir toda la información sin poder dedicar demasiado tiempo a la estructura del archivo de datos que era más adecuada, la visualización contiene multitud de campos calculados para obtener en cada caso la información necesaria para cada gráfico.

Tal vez la parte que pueda resultar algo más compleja es la central, con las pirámides de población. Que cuenta con un filtro contextual para separar los distritos y barrios del este de los del oeste. Dos campos calculados para separar de forma dinámica las pirámides de población utilizando small multiples que son los siguientes:

Column = (INDEX()-1)%ROUND(SQRT(SIZE()))                               Row = INT((INDEX()-1)/ROUND(SQRT(SIZE())))

Ambos además calculados en base a un campo calculado adicional enlazado a un parámetro para seleccionar entre distritos o barrios. He utilizado además un cálculo LOD para fijar la distribución de la población total del municipio de Madrid y mostrarla a modo de referencia utilizando líneas. De todas formas toda la visualización se puede descargar desde Tableau Public.

 

Este es el resultado final. Haz click en la imagen para ver la versión dinámica.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *