Autor: Víctor M. Ruiz / Policía Local de Calviá (Mallorca)
Desde hace no poco tiempo, vengo trabajando en un proyecto, el cual, permite visibilizar de una forma más clara, los siniestros que ocurren a nivel de administración local, haciendo más claros los puntos de concentración de accidentes en vías de competencia municipal (Todo ello, por supuesto extrapolable a administraciones de ámbito superior).
No se ha inventado nada nuevo, de esta herramienta ya se dispone en la DGT, como es el sistema ARENA, en el cual se introducen los datos de los accidentes con víctimas ocurridos en vías interurbanas.
Para el visor, se ha utilizado el siguiente software gratuito:
• PGADMIN – Como gestor de bases de datos (Postgres), instalando en el mismo un plug-in (Post-GIS) para poder trabajar con archivos tipo GIS. (https://www.pgadmin.org)
• QGIS – Herramienta muy útil en el campo de GIS, el cual es la base del proyecto, y a través del cual se introducen los datos de los accidentes. (https://www.qgis.org/es/site/)
• Visual Studio Code (Microsoft): Pese a que sea de Microsoft este software es gratuito a nivel de usuario. Utilizando los lenguajes Pyhon y CSS se ha creado el visor web para que la experiencia de visualización se ha muchos más fácil. (https://visualstudio.microsoft.com/)
1.- POSTGRES
En este software no me liaré mucho, ya que no soy muy experto en él. Deciros que se trata de un gestor de bases de datos. A nivel de usuario se trabaja en lenguaje SQL para realizar las consultas y modificaciones.
Con éste, en primer lugar hemos de crear un servidor al cual, posteriormente enviaremos los datos a través de QGIS.
2.- QGIS
Software libre, el cual es la base del proyecto. Permite introducir haciendo click en el lugar del mapa, los datos del accidente en cuestión, todo ello a través de un formulario previamente creado.
Este es el formulario creado, se han introducido datos de referencia de vías, fecha, precipitaciones, alcoholemia, gravedad, vehículos implicados y tipo de colisión. Los datos de geoposicionamiento ya los incluye el software por defecto.
A través de datos descargados de AEMET se han establecido unos valores en los que el apartado de precipitaciones figura marcado, siempre y cuando hayan tenido un valor superior a 1 l/m cuadrado.
El horario se ha tenido en cuenta los datos de entrada y salida de sol diarios para establecer si ha sido diurno o nocturno. El resto de datos de formulario se introducen de manera manual, ya que en el lugar en el que trabajo y seguramente en el de muchos de nosotros, se hace muy difícil el volcado masivo de datos.
El mismo QGIS, ya trae por defecto muchas herramientas de gestión de datos, ya que es una de sus funciones principales, haciendo posible filtrados y estadísticas, además de innumerables operaciones que se escapan de mi alcance.
La primera vez que hemos introducir los datos, conviene guardarlo en archivo shape *,SHP. A través del plug-in PostGis, lo importamos a postgres para que éste, de manera automática ya nos cree las columnas y lo identifique.
Una vez que ya lo tenemos importado, a través de este apartado ya podemos establecer la conexión con postgres y seguir introduciendo datos.
Bueno, sin intención de aburriros con no menos de 400 líneas de código Python, paso mejor a describir el funcionamiento de la web.
En la parte principal se establecen los datos generales de accidentes:
Bueno, después de toda esta presentación, pasaré mejor a describirlas.
Las dos primeras, en función de la columna que hemos elegido en ésta última, nos aparecerán los puntos, ya sea en tipo histograma de columnas o pie, con representación por colores de núcleos, gravedad, alcoholemia… En el histograma los colores se establecen por años, mientras que en el pie o pastel, se establecen los totales generales de la columna escogida.
Si en el mapa de la izquierda nos situamos sobre un punto, nos aparecerá un panel con los datos principales del accidente.
Se da la opción también de poderlo visualizar en mapa de calor, incrementándose en función de la cantidad de siniestros de la zona.
Ya por último, en la tabla de abajo, tenemos opciones de elegir por columnas, de manera individual o creando filtrados de las opciones que queramos (alcoholemia positiva, precipitaciones y núcleo, por ejemplo). En el lado derecho aparecerán los resultados del filtro y eso a su vez en el mapa y en el gráfico.
Bueno, espero no haberme extendido mucho y ha sido un placer la presentación.
Si hay algún tipo de interés en obtener más información, estoy a vuestra entera disposición.