Skip to content
/ DAIMO Public

Python-Dash-Plotly Dashboard to evaluate the intervention and closure of bridges in the Colombian road network 馃嚚馃嚧

Notifications You must be signed in to change notification settings

jsurrea/DAIMO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

73 Commits

Repository files navigation

DAIMO: Dashboard para el An谩lisis de Intervenciones en Movilidad

Introducci贸n

DAIMO es un Dashboard interactivo que permite estudiar los costos indirectos asociados al cierre de un puente en la red vial de Colombia 馃嚚馃嚧. Por un lado, permite identificar los puentes cr铆ticos, es decir, aquellos cuyo cierre o intervenci贸n ocasiona el mayor costo sobre la red. Por otro lado, permite simular el cierre o intervenci贸n de un conjunto de puentes para examinar el cambio en el flujo de veh铆culos de todos los arcos de la red.

DAIMO se encuentra implementado en Python por medio de la librer铆a Plotly-Dash y se ejecuta como una aplicaci贸n web a trav茅s del framework Flask. Permite procesar cualquier conjunto de datos v谩lido por medio de las librer铆as pandas, numpy y networkx. Su arquitectura permite extender con facilidad nuevas p谩ginas de funcionalidades, incluyendo modelos de Machine Learning. Adem谩s, se puede desplegar r谩pidamente en servicios Cloud para mejorar su rendimiento y disponibilidad.

A continuaci贸n, se presenta una demostraci贸n de su funcionamiento:

Grabacion.de.pantalla.2023-12-06.a.la.s.2.28.41.a.m.mov

Instalaci贸n

DAIMO utiliza Python3.8 para ejecutar la aplicaci贸n web. Para instalar todas las librer铆as necesarias, ejecute el siguiente comando la primera vez:

$ pip install -r requirements.txt

Para utilizar DAIMO, ejecute el siguiente comando desde el directorio del proyecto:

$ python app.py

DAIMO le informar谩 si la aplicaci贸n se ejecut贸 correctamente:

Dash is running on http://127.0.0.1:8086/

 * Serving Flask app 'app'
 * Debug mode: on

Deber谩 abrir su navegador y dirigirse a la direcci贸n web http://127.0.0.1:8086/ para visualizar el dashboard.

Manual de uso

Carga de datos

Empiece haciendo click en el bot贸n de configuraci贸n para abrir la barra lateral. Seguidamente, seleccione un archivo entre aquellos configurados previamente o arrastre un nuevo archivo a la secci贸n delimitada. Podr谩 monitorear el progreso de la carga de datos en la consola de ejecuci贸n de DAIMO.

Captura de Pantalla 2023-12-02 a la(s) 1 31 10 a m

Identificar puentes cr铆ticos de la red vial

En el contenido principal encontrar谩 el costo total de la red vial de Colombia calculado a partir de los datos seleccionados. Adem谩s, podr谩 visualizar todos los arcos presentes en el grafo y los puentes de inter茅s. Al ubicar su cursor sobre un arco (hover), podr谩 visualizar cu谩l es el flujo de veh铆culos diario a trav茅s de dicha ubicaci贸n. De forma similar, al ubicar su cursor sobre un puente, podr谩 obtener informaci贸n relevante como el costo indirecto asociado a su intervenci贸n, el incremento de dicho costo con respecto al costo original y el flujo diario de veh铆culos sobre dicho puente. Adem谩s, es posible filtrar los puentes a trav茅s de la barra lateral de configuraci贸n y clasificarlos f谩cilmente seg煤n su costo de intervenci贸n a trav茅s del mapa de color.

Convenci贸n de color: El color de los puentes se determina en una escala de color Verde-Amarillo-Rojo de forma lineal entre aquellos con menor y mayor valor del cambio porcentual de sus costos indirectos. Los dem谩s arcos se representan con una tonalidad azul p谩lida.

Captura de Pantalla 2023-12-02 a la(s) 2 03 20 a m

Simular una intervenci贸n simult谩nea de m煤ltiples puentes

Inicialmente, se encontrar谩 con un mapa vac铆o. Para a帽adir los puentes que desea incluir en la simulaci贸n, deber谩 abrir el men煤 lateral de configuraci贸n y seleccionarlos. A medida que los selecciona, podr谩 ir visualiz谩ndolos en el mapa del contenido principal. Una vez haya seleccionado todos los puentes de inter茅s, deber谩 hacer click sobre el bot贸n Simular para empezar a evaluar su pol铆tica de intervenci贸n. Debido al volumen de datos, su consulta puede tardarse hasta 5 minutos; sin embargo, en este tiempo podr谩 consultar otras p谩ginas del dashboard o explorar la informaci贸n disponible en los mapas.

Captura de Pantalla 2023-12-02 a la(s) 2 31 46 a m

Una vez se complete la simulaci贸n, podr谩 encontrar el costo excedente de la red vial con respecto a su estado original, los puentes bajo intervenci贸n y el cambio en los flujos de veh铆culos a trav茅s de cada arco de la red. Al ubicar su cursor sobre un arco (hover), podr谩 visualizar su flujo de veh铆culos antes y despu茅s de la intervenci贸n, as铆 como la diferencia porcentual de estos flujos.

Convenci贸n de color: El color de los puentes bajo intervenci贸n es negro. Por su parte, se asigna un color a los arcos seg煤n la diferencia porcentual de sus flujos de veh铆culos diarios. El color azul intenso se asigna a aquellos arcos con la mayor disminuci贸n porcentual, el color rojo intenso se asigna a aquellos con mayor aumento porcentual, y el color blanco se asigna a cambios cercanos al 0%.

Captura de Pantalla 2023-12-02 a la(s) 2 40 59 a m

Interactuar con los mapas

Plotly permite interactuar de forma muy amigable con mapas. Dentro de su conjunto de herramientas, es posible moverse a trav茅s del mapa, cambiar el nivel de zoom y tomar capturas de pantalla. Encontrar谩 dichas opciones en el men煤 superior derecho de toda gr谩fica al ubicar el cursor sobre esta. A continuaci贸n, se describen visualmente las principales funcionalidades ofrecidas:

Captura de Pantalla 2023-12-02 a la(s) 1 38 23 a m

Verificar que la aplicaci贸n se est茅 ejecutando correctamente

Dash ofrece un men煤 en la esquina inferior derecha de la aplicaci贸n que permite monitorear que esta se encuentre ejecutando correctamente. Al hacer click sobre el s铆mbolo <> se mostrar谩n 3 nuevos 铆conos:

  • Mapa de callbacks de la aplicaci贸n: Permite entender c贸mo est谩 estructurada la interacci贸n de la aplicaci贸n web.
  • Historial de errores: Permite obtener informaci贸n precisa de cualquier error que ocurra durante la ejecuci贸n de la aplicaci贸n web.
  • Servidor disponible: Permite verificar que la aplicaci贸n se encuentre en ejecuci贸n en un momento dado.

Captura de Pantalla 2023-12-02 a la(s) 2 19 16 a m

Soluci贸n de errores

El tama帽o de los mapas no se visualiza correctamente

En ocasiones, los mapas solo mostrar谩n una parte de su contenido despu茅s de cargar los datos. Para visualizarlos correctamente, puede recargar la p谩gina o hacer click sobre el bot贸n de Regresar a la vista original dentro de las opciones de interacci贸n de cada gr谩fica.

287426920-be6a2d64-bd14-4e46-9bcd-604fa8d390a4

About

Python-Dash-Plotly Dashboard to evaluate the intervention and closure of bridges in the Colombian road network 馃嚚馃嚧

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published