Projet 3A ISI — Challenge Open Data (COD)

Contexte

Ce site web a été réalisé dans le cadre du Challenge Open Data proposé en 3ème année ISI à Grenoble INP - Ensimag, UGA. L'objectif de ce projet est de développer une application Web de visualisation interactive, dédiée à l'exploration d'un ou plusieurs jeux de données libres (institutionnels ou non).

L'application que nous avons développé fait état des accidents corporels de la route en France en 2019. Ces données choisies relèvent de la thématique du développement durable et de la responsabilité sociale en illustrant les dangers de la route et en touchant au transport, qui est un enjeu important de la transition écologique.

Équipe

  • CHARDON Arthur
  • MANFREDI Théo
  • MARMONIER Yohann
  • RIOU Laura

Données

Jeux de données choisis

Nous avons choisi de visualiser les données de la Bases de données annuelles des accidents corporels de la circulation routière années de 2005 à 2019 en France disponible sur data.gouv.fr.

Traitement des données

Les données ont étés pré-traitées grâce à un script python pour ne garder des csv initiaux que les informations pertinentes. Nous avons retiré beaucoup de colonnes et gardé les suivantes :

Pour la France en 2019

  • L'identifiant de l'accident
  • La Latitude
  • La Longitude
  • Les Types de véhicule impliqués
  • La gravité (si il y a eu un décès)

Pour cela nous avons croisé les fichiers caractéristiques-2019.csv (une ligne par accident), vehicules-2019.csv (une ligne par véhicule impliqué dans un accident) et usagers-2019.csv (une ligne pour chaque personne impliquée dans un accident).

Pour plus de détail le descriptif des bases de données est disponible.

Ces informations ont ensuite été stockées dans un array dans un fichier JavaScript.

Visualisation

Étant donné que les données que nous avons sont principalement géographiques nous avons choisi de les afficher sur une carte. Cela permet de rendre compte de la densité et du nombre d'accidents routiers.

Sachant que nous avions des données complémentaires sur ces accidents, nous avons décidé de les rendre visibles grâce à des filtres.

Pour rendre cette visualisation encore plus interactive nous avons décidé d'également proposer à l'utilisateur·rice de découvrir les accidents sur le trajet de son choix au travers de notre interface dédiée.

Interface et interaction

Nous avons voulu créer une interface utilisateur·rice intuitive et facilement compréhensible. Pour cela, sur la page d'accueil, Carte, nous avons la carte de densité avec tous les accidents et donc l'ensemble des données présentées.

Une fois cela visualisé, l'utilisateur peut ensuite choisir les filtres qu'il souhaite appliquer sur la droite. A chaque fois qu'il·elle clique sur "Appliquer les filtres", les données sont filtrées et affichées sur la carte. L'utilisateur·rice peut également zoomer à sa convenance.

Sur une deuxième page Trajets, l'utilisateur·rice peut sélectionner un point de départ et un point d'arrivée pour son trajet et l'interface affiche les accidents qu'il y a eu à moins de 20 mètres de l'itinéraire le plus direct. Ces accidents sont pointés sur la carte et annotés dans un bandeau.

Finalement, sur la page Rapport, ce descriptif du projet est disponible pour donner du contexte.

Outils utilisés

  • Bootstrap pour le style des pages.
  • L'API Leaflet pour le rendu de la carte des accidents.
  • Le plugin Leaflet.heat pour la heatmap qui peut être zoomée.
  • L'API Arcgis pour avoir les routes entre les deux points.