Dash Sylvereye: Biblioteca de Visualización Interactiva de Redes de Caminos para Tableros Dash

Desarrollador

Dr. Alberto García Robledo, CONACYT-CentroGeo

Colaboradores

Dra. Mahboobeh Zangiabady, University of Twente

Resumen

Herramientas de visualización de redes de código libre del estado del arte, como Gephi, KeyLines y Cytoscape, no son adecuadas para estudiar redes de calles con miles de caminos, ya que no admiten simultáneamente el dibujado polilíneas para los bordes, mapas navegables, renderización acelerada por GPU, interactividad y medios para visualizar datos multivariable. Para llenar este vacío, el Observatorio Metropolitano CentroGeo ha desarrollado Dash Sylvereye.

Dash Sylvereye es una biblioteca de visualización interactiva de redes de caminos para Python desarrollada en el Observatorio Metropolitano CentroGeo. Está implementado como un nuevo componente para el framework Dash.

Video introductorio

Características

Dash Sylvereye despliega redes de caminos georeferenciadas encima de tile web maps Leaflet.js. El usuario puede navegar en la visualización de la red de caminos a través de los controles de panning y zooming del tile web map. Dash Sylvereye también puede desplegar marcadores encima de la red de caminos o del tile web map. El programador puede definir reacciones a eventos de click en los elementos de la visualización a través de Dash callbacks. Adicionalmente, el programador puede definir el color, visibilidad, transparencia y el tamaño de nodos, enlaces y marcadoresindividuales, así como el icono y el tooltip a usar en marcadores. Finalmente, el componente Dash Sylvereye puede interactuar con otros componentes del framework Dash a través de callbacks para la generación de tableros de visualización interactivos que incluyen visualizaciones de redes de caminos producidas por Dash Sylvereye.

Arquitectura

Arquitectura de Dash Sylvereye. Los bloques amarillos representan bibliotecas para JavaScript. Los bloques azules representan bibliotecas de Python.

El núcleo de la biblioteca Dash Sylvereye está constituido por un componente React.js que utiliza la biblioteca Leaflet.PixiOverlay para dibujar encima de un mapa Leaflet.js los nodos, enlaces y marcadores de una red decaminos utilizando la biblioteca PixiJS, la cual a su vez explota WebGL. El componente también utiliza la biblioteca Chroma.js para calcular escalas de colores para los elementos de la visualización. El componente React.js de Dash Sylvereye es envuelto por una capa Python por Dash para dar origen al componente Dash Sylvereye que puede ser utilizado desde Python. Valores de configuración por defecto y constantes son ofrecidos para facilitar al programador la tarea de personalización de los estilos visuales de una visualización Dash Sylvereye. Dash Sylvere también provee rutinas que permiten cargar dentro de una visualización Dash Sylvereye redes de caminos obtenidos por la biblioteca OSMnx desde OpenStreetMap.

Presentaciones

Taller “Desarrollo de Tableros Web de Visualización de Datos con Python, Dash y Dash Sylvereye” en la Escuela de Verano en Ciencias de Información Geoespacial 2022 del CentroGeo:

Slides disponibles aquí.

Presentación “Visualización de Redes Geoespaciales con Dash Sylvereye” en la Semana de las Ciencias de Información Geoespacial del CentroGeo:

Slides disponibles aquí.

Demo

El tablero Simulación SUMO de Tráfico Vehicular en el Centro de Querétaro presenta una visualización de ejemplo desarrollada con el framework Dash que explota Dash Sylvereye para el análisis postmortem de una simulación en la red de calles de la ciudad de Querétaro, México. Para las simulaciones, se hizo uso de SUMO, un simulador muy conocido en el campo del análisis urbano.

Código fuente

Dash Sylvereye es un proyecto de código abierto, disponible a través de:

GitHub: https://github.com/observatoriogeo/dash-sylvereye

PyPi: https://pypi.org/project/dash-sylvereye/

Página principal y documentación

La página principal y la documentación completa de Dash Sylvereye pueden ser encontradas en este enlace.

Publicaciones

Garcia-Robledo, Alberto, and Mahboobeh Zangiabady. “Dash Sylvereye: A Python Library for Dashboard-Driven Visualization of Large Street Networks.” IEEE Access (2023). DOI10.1109/ACCESS.2023.3327008

Registros de Propiedad Intelectual (INDAUTOR)

AutorAlberto García Robledo
TítuloDash Sylvereye
RamaProgramas de computación
TitularCentro de Investigación en Ciencias de Información Geoespacial, A.C. (con fundamento en el Artículo 83 de la L.F.D.A.)
Número de registro03-2021-091714185400-01

Para mayor información acerca de Dash Sylvereye contactar al Dr. Alberto García Robledo a agarcia@centrogeo.edu.mx.