Cartographier et visualiser les données ouvertes

Atelier OpenData sur le tri sélectif

Méthodologie proposée par Guillaume Simon pour La Maison Numérique.

Dans le cadre de l’atelier OpenData de décembre 2016 sur le thème du tri sélectif, la Maison Numérique vous propose un exercice de cartographie des données de la commune sur les point d’apport volontaire (PAV).

Le but de l’atelier est d’utiliser ces données afin de créer une carte interactive et accessible à tous pour permettre à chacun de découvrir les PAV proches de chez lui et d’en connaître les déchets qui y sont acceptés.

Nous proposons ici un guide étape par étape partant de la recherche de données jusqu’à la création et personnalisation de la carte interactive. Pour chaque étape, nous donnerons d’abord une explication générale sur la démarche (applicable donc à d’autres thèmes que celui des PAV), puis nous parlerons concrètement de l’exemple qui concerne le thème du tri sélectif.

Voir en plein écran

Les données utilisées proviennent d’Open PACA, on y trouve des données concernant la région sur différentes thématiques.

Mais on peut également trouver des données ouvertes à  différentes échelles et sur différents thèmes. En voici une liste non exhaustive :

Les données relatives aux PAV du Pays d’Aix sont tirées d’Open PACA  et se trouvent à cette adresse. Une fois téléchargées et décompressées, les données se présentent sous la forme d’un fichier .ods (ce fichier se situe dans le dossier CSV, lui-même situé dans le dossier Pav-Cpa-16122013).

Pour cette étape nous allons ouvrir ce fichier avec un tableur, dans ce cas-ci Libreoffice Calc qui, outre sa licence Open Source, va nous être particulièrement utile dans le cadre des données choisies.

En principe, tout jeu de donnée qui se respecte est toujours muni d’un fichier contenant le complément d’information permettant de décrypter le sens des données. La plupart du temps ce fichier est appelé métadonnée.

Une fois ouvert dans un tableur, on constate que les données sont triées en différentes colonnes. Afin d’interpréter ces données, on peut se référer au fichier “metadonnée_pav.pdf” dans le dossier Pav-Cpa-16122013 qui va nous en dire plus sur chacune des variables et des unités utilisées.

En l'occurrence on a respectivement :

  • FLUX : Corresponds aux types de déchet acceptés dans le PAV
  • COMMUNE : Qui donne le nom de la commune où se situe le PAV
  • M3 : renvoie, vraisemblablement, au volume du conteneur exprimé en mètre cube
  • NOMPAV : Donne le nom du PAV
  • ADRPAV : Donne l’adresse du PAV
  • X : Donne la longitude de l’emplacement du PAV, en utilisant le système de coordonnées “Lambert 93”
  • Y : Donne la latitude de l’emplacement du PAV, en utilisant le système de coordonnées “Lambert 93”

Il est rare que les données, telles que livrées par le site d’où elles proviennent, soient dans un format directement exploitable pour n’importe quels outils. Néanmoins, il existe des sites qui proposent nativement des exportations de leurs données dans d’autres formats.

Dans le cas du fichier téléchargé, les données, telles qu’elles sont, ne sont pas exploitables par les outils de carte interactive que l’on va utiliser par la suite.

En effet, dans cet exemple on va utiliser l’outil en ligne uMap et pour qu’il puisse interpréter nos données, il va falloir renommer certaines de nos colonnes et modifier l’unité utilisée pour les coordonnées géographiques.

Concrètement, pour que uMap puisse interpréter nos données, il suggère 4 colonnes pour structurer nos informations :

  • lon : c’est la colonne dans laquelle on va retrouver les coordonnées longitudinales GPS du PAV
  • lat : c’est la colonne dans laquelle on va retrouver les coordonnées latitudinales GPS du PAV
  • name : sera le nom affiché sur chaque point de la carte interactive
  • description : C’est ici que l’on pourra mettre des informations complémentaires

Dans mon exemple, je commence par renommer la colonne “FLUX“ en “name” pour que la carte affiche le type de déchet sur chaque point.

Ensuite, pour les colonnes “X” et “Y” je les laisse telle quelle et je crée sur deux plages vides deux nouvelles colonnes que l’on nomme respectivement “lon” et “lat”.

Enfin je renomme la colonne “ADRPAV” en description, pour pouvoir donner l'adresse du PAV comme information supplémentaire.

Remarque : Autant Umap n’as pas de problème à avaler un fichier avec des colonnes qu’il ne comprend pas (auquel cas il se contentera de les ignorer). Autant il réagira mal si vous placez deux fois un nom colonne interprétable (à savoir “name”, “description”, “lat” et “lon”).

Maintenant il faut convertir les données présentes dans les colonnes « X » et « Y » qui sont en exprimées avec le système Lambert 93 en données GPS utilisant la norme WGS84.

Solution 1 : Utiliser un outil en ligne

En parcourant le web, on peut trouver différents outils de conversion de coordonnées. Je propose GeoFree qui a l’avantage de pouvoir convertir toute une liste (maximum 500 éléments) de coordonnées. Il va donc falloir copier/coller les données dans l’espace prévu à cet effet, préciser le système d’entrées (Lambert 93) et de sorties (WGS84), puis récupérer les coordonnées en remplaçant les anciennes.

Attention, on ne va pas pouvoir traduire tous les points d’un coup vu que la liste est limitée à 500 lignes, il va donc falloir répéter l’opération 4 fois étant donné que l’on a 1874 éléments dans notre base de données.

https://lh3.googleusercontent.com/gdQ4_PSF2NKTQYr7BPtUay5nXDgHRIa4y4L7X4iS7FBVcYDhv1d1D3ODFegHmmZnLXZlnobj96oDxh3GX-r7gjV8OzUJBxvtisI-F24MH7fpnrOc-dFAyamS42Aj9dgpDu2qv7PrbZMYBQewgQ
Cette solution à l’avantage d’être rapide et pratique vu qu’elle ne demande aucun programme supplémentaire, mais va vite se révéler laborieuse pour les bases de données contenant beaucoup d’unités.

Solution 2 : Ajout de fonctions à CALC

Comme mentionné plus haut, Calc va se révéler très avantageux dans le cadre de cet exemple, car on va pouvoir lui greffer de nouveaux outils pour qu’il puisse convertir lui-même les données.Un outil permettant de faire cette conversion a été mis à disposition par des utilisateurs chevronnés sur le forum d’OpenOffice, le téléchargement de ce plug-in est disponible ici.

Ensuite, il suffit d'ouvrir ce fichier et Calc les installera automatiquement.
C:\Users\Guillaume Simon\Google Drive\Stage\CE\Capture3.JPGC:\Users\Guillaume Simon\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Capture2.jpgMaintenant que le plug-in est installé, on va pouvoir effectuer la conversion sous Calc.

Remarque : lorsqu’on souhaite appliquer une formule à une variable qui fait appel à elle-même, on ne travaille pas directement sur la donnée originale. Il vaut mieux créer deux nouvelles colonnes “lon” et “lat” vides

Commençons par les longitudes, pour cela il faut sélectionner la  cellule juste en dessous de la colonne “lon” nouvellement créée, puis il faut y insérer une fonction via l'icône prévue à cet effet.

La formule recherchée s'appelle “L93LONWGS”, ensuite il suffit de suivre les instructions de l'assistant de fonction. C’est à dire en sélectionnant dans le tableur la cellule correspondant à X, puis la cellule correspondante à Y. Après, on fait la même chose avec la colonne “lat” grâce à la formule “L93LATWGS”. https://lh3.googleusercontent.com/NIIJlP_VgElh2So6xVZIJdlyC-eIuzaiIrxfv1JkWFfC3mhnUwLi_8wN2RNKfjBOieDGqQnWTuBQ0loU4SN8a9ogRQzBtxiMvq9b16J9OxIqIohDNqZfNlsLZ3-oMMCMmlXipkUzHSKDaw0m7A
Une fois effectué sur les deux premières lignes, sélectionnez-les et étendez-les jusqu’au bas de la feuille.
C:\Users\Guillaume Simon\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Capture7.jpg

 

Voilà, normalement votre cellule à bien été convertie en coordonnées GPS standard, pour vérifier copier/coller vos deux résultats sur un moteur de recherche. (Attention, généralement on exprime d’abord la latitude puis la longitude. dans mon exemple si je recherche ”5.5779866664 43.6400245106” on me renvoie en Éthiopie, alors à moins que la commune ait implanté des PAV en Afrique subsaharienne, il faut inverser les coordonnées pour arriver au résultat escompté.

Remarque : La vérification est d’autant plus nécessaire, car la formule de conversion des coordonnées contient des approximations, dès lors, il est possible que des points ce soit légèrement déplacé.

Une dernière chose à faire c’est de séparer en plusieurs feuilles Calc chaque type de déchet en différent calque.https://lh5.googleusercontent.com/DYAOHiJNuB6ojNKDI8kH2ObHzFaZ8LOYO7VIYBra1-5kzhZ52x0yiJRrgeIPnFLbw6f3oo1wmGHLxa0KvWISYuyBUcmSWU51G83J-s_U3QlB9h1FRmW2QmGCyvNz3xtOfANSSJt9h1s4DonuDA

Dans ce cas si, je conseille de faire un tri automatique en fonction de la colonne “name”. Il suffit de cliquer sur le l'icône de tri automatique. Puis là vous aurez accès un tri de la colonne en appuyant sur la flèche pointant vers le bas (Image ci-dessus, point 2). Vous pourrez ainsi  choisir les types de déchet qui s’affiche dans le tableau en les cochant (image ci-contre, point 3). Il ne restera plus qu'à sélectionner tout le tableau (ctrl + a), le copier (ctrl + c), ouvrir une nouvelle feuille - ce sont les onglets en bas à gauche de votre tableur (ctrl + n) et coller (ctrl + v). Une fois les fiches constituées, enregistrez chacune d’elles au format .csvhttps://lh6.googleusercontent.com/F11SvUahUZUOWUf3Z2OSIx2bMAITGkiC94F27SrarzPDtbff97BZKkf6tDqK7Y48kpD1KS0PYv_NgGaSfyTybK2bOIdgZ09_Lx_VbeHo5e3I5Mzgdf_4ImQfqvQNvgpv97NjMrvo

Remarque : les fichiers .csv ne peuvent pas contenir plusieurs feuilles.

À ce stade, si on souhaite utiliser uMap, on en a terminé avec la mise en forme des données de départ. Car, comme précisé précédemment, uMap ne gère que 4 arguments à l’importation d’un fichier, donc le reste du travail va s’effectuer en ligne via l’interface de uMap.

Pour aller plus loin, on peut utiliser l’outil Geojson, qui est un outil comparable à uMap si ce n’est que uMap est plus esthétique et a une interface plus agréable alors que Geojson a développé son propre code et permet d’aller plus en profondeur dans l’automatisation. Pour la suite, je vais développer ce guide sur uMap et je proposerai à la fin une partie dans laquelle on peut utiliser des mises en forme automatiques.

Remarque : Ne vous débarrassez pas de la fiche avec toutes les données, elle peut être utile pour d’autres projets.

Rendez-vous sur uMap et cliquer sur “Créer une carte” vous voilà sur l’interface d’édition de uMap.C:\Users\Guillaume Simon\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Capture9.jpg

Afin de conserver sa carte plus facilement, nous vous conseillons de créer un compte uMap.

Pour importer les données, cliquez sur l'icône d’importation, et aller l’un de vos fichiers. Préciser dans la barre “Choisir le calque de données pour l'import”, importer dans un nouveau calque.

Attention, il faut charger les fichiers un par un pour avoir un calque pour chaque type de déchet.

On va maintenant se concentrer sur la partie esthétique, c’est-à-dire s’efforcer de rendre la lecture de la carte plus agréable possible.

Dans mon exemple, le résultat de l’importation donne une bouillie de points inintelligibles. Ce que je voudrais, c’est que les différents types de déchet apparaissent dans les couleurs différentes.

https://lh3.googleusercontent.com/W7O7yEIMmXDsPBdITwotLrQuiopF1IWZrZJenXBQyWHIdZtZ_Q2hHObX3DhWiVrvCZ_ZtbRYfWjryCVg2atCvppIjrDlhvcfu5feiln4xw24M7aFqUc1bUPj-kTUGY2UjFPGpyujZqMuSU_O0w

Pour éditer les données d’un calque, cliquez sur l’icône pour “gérer les calques” et cliquez sur le crayon pour modifier les paramètres d’affichage de ce calque.

C:\Users\Guillaume Simon\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Capture13.jpg

Remarque : pour se concentrer sur un calque à la fois, vous pouvez désactiver la visualisation des autres calques avec l'icône en forme d’œil.

Le type de calque

uMap propose 3 types de calque :

  1. par défaut : Affiche tous les points sur la carte, peu importe le niveau d'agrandissement de la carte.
  2. Avec Cluster : Rassemble les points sous un cluster, lorsque le nombre de points, dans un agrandissement donné, nuit à la visibilité
  3. Heatmap : la heatmap convertit les points en une onde colorée qui irradie aux alentours de sorte que, plus les points sont concentrés dans une zone, plus la zone prend une teinte prononcée.

Pour les PAV, étant donné leur grand nombre, je vais opter pour les Clusters.

Forme et couleur

Ensuite, je peux personnaliser la couleur ainsi que la forme des points, pour donner du contraste aux différents types de déchets acceptés.

Dans mon exemple, j’ai changé la forme des points en cercle, car ceux-ci sont plus discrets. J’ai également changé les couleurs pour qu’elle corresponde aux couleurs habituellement utilisées par les conteneurs (jaune pour le papier, brun pour les ordures ménagères, etc.)

Remarque : La plupart de ces paramètres sont modifiables de deux manières : soit via l’édition d’un calque (qui ne s’appliquera qu’à une partie des données présentes sur la carte), soit via les paramètres généraux de la carte (qui toucheront tous les points importés).

Fond de carte

On peut également changer le fond de carte pour faire ressortir le contenu et pour proposer une carte en fonction des besoins de l’outil (topographie, routes, cours d’eau, etc.).

Une fois qu’on est satisfait de l’affichage des données, on peut parfaire l’affichage en s'intéressant à l’interface que le futur utilisateur de votre carte aura à l’écran.

Pour paramétrer l’interface utilisateur rendez-vous dans le dans les options « options d’interaction par défaut ».C:\Users\Guillaume Simon\Google Drive\Stage\CE\Capture11.JPG

Pensez aussi à choisir le niveau d'agrandissement de la carte par défaut, il suffit de placer la carte telle qu’on la voudrait à l’ouverture et il faut ensuite cliquer sur cette icône.

Geojson et les mises en forme conditionnelles

Geojson a l’avantage d’utiliser d’autres arguments à l’importation des données comme la taille de l’icône, sa forme et sa couleur. Pour cela, il faut créer de nouvelles colonnes correspondant à ses arguments :

  • « marker-color » : utilise les code couleurs HTML (ex : #40A497) pour déterminer la couleur du marqueur.
  • « marker-symbol » : spécifie l’icône qui sera présente sur le marqueur (ex : circle, cross, square, bicycle, etc.)
  • « marker-size » : spécifie la taille du marqueur, choix entre « small », « medium » et « large ».

L’intérêt de ses mises en forme réside dans l’automatisation, sous un tableur, de ces arguments en fonction d’un nom. En maniant les formules conditionnelles sur le tableur, on peut, par exemple, déterminer une colonne « marker-symbol » en fonction de la colonne « name ».

Exemple :

Dans les données, on a une colonne qui spécifie le volume des conteneurs, on pourrait donc sur cette base déterminer la taille du marqueur avec cette formule :

=SI(F2=0;"small";SI(C2>3;"large";"medium"))

On peut aussi prédéterminer la couleur du marqueur en fonction du type de déchet, ce qui va nous simplifier la personnalisation de la carte. Ici j’ai utilisé cette formule :

= SI( A2="VERRE"; "#59FB30"; SI( A2="OM"; "#A48340"; SI( A2="JRM"; "#2EA4FE"; SI( A2="EMR";"#FBF530"; "#ACACAC"))))

Pour plus d’information sur la fonction « SI » rendez-vous sur la page de commentcamarche.net dédié à ce sujet.

Utilisation de la heatmap

https://lh5.googleusercontent.com/l0zDY9p4shKA3Csx_l47uBH5Egw5V3ytTbanS8wkrj4POv0Fso51PLQCMQmspu4wEoe4GCBg2glNxnxkEd15PShVU5Co13FuNwWwd51k-4IXFaS2RqCwscQMgEshNm7v4tcCvRof

Précédemment, nous avons évoqué les calques en heatmap, je propose ici une manière de l’utiliser avec les données des PAV. Pour cela on peut importer le fichier contenant tous les types de déchets et l’importer dans uMap.

On transforme le calque en type heatmap, on change également le fond de la carte pour une version monochrome et on obtient un rendu qui pourrait montrer les zones les plus et les moins desservies en PAV. Ensuite il faut « jouer » avec l’option d’étendue des nuages pour obtenir le résultat désiré. (Liens vers la carte créée).

Parce que cette humble méthode présente ses limites, nous laissons ci-dessous une liste des difficultés rencontrées ainsi que des pistes de solution pour les résoudre. Soyez libre d’ajouter ou compléter cette section.

  • Les points se chevauchent, le seul moyen d’avoir une vue “propre” c’est de regarder calque par calque.

    Piste de solution : modifier légèrement toutes les coordonnées pour qu’elles se décalent les unes par rapport aux autres.

     

Jusqu’ici nous n’avons traité que la cartographie, mais elle n’est qu’une manière parmi d’autres de présenter les données.

Graphiques, nuages de mots, pictogramme et autres infographies sont autant de manières de présenter des données.

Il existe sur le web des outils en ligne qui propose de convertir vos données en illustrations graphiques.

Pour travailler avec ses outils, la démarche concernant la préparation des données conserve les mêmes principes (Chercher, comprendre, nettoyer, importer).

Le site hello-data s’est chargé de répertorier ces différents outils en fonction des types de sorties envisager.

Ci-contre, deux exemples réalisés sur le site Inforg.am grâce aux données récupérées dans le Rapport annuel sur le prix et la qualité du service d’élimination des déchets du Pays d’Aix, disponible sur le site agglo-paysdaix.fr.
https://lh3.googleusercontent.com/QBYa8Lt2O203hmLV0XcoD4IImRh-mPfwuigfrFX7YxIfwlsol2Y9KvTF4XUz_NtPd1VfT6X8xtxlCZ-xf9Z7IdzVhzDrMD6_1ngC0-n39aGARH54JdOV7wyLuNmGGEMBQ_ADWWci

Le premier graphique présente l’évolution des tonnages collectés de trois catégories de déchets (Verre, Jrm et Emr) dans les PAV du Pays D’Aix entre 2010 et 2014. Le second est une infographie qui rend compte visuellement du ratio, en moyenne, du nombre d’habitants pour un point d’apport volontaire.https://lh3.googleusercontent.com/Kzz7PWBV4Ab2_D5fIIfb-Jt8BGW4ZVkCICLd7aDc_xCdkdODIUnElQbRIK0njx3R8HIAG5JuDs-2Txi3kBpM--XMIaepAB8bBQqowd3E_42mLtgcotiw-YiHT7PFA-za5587Jub8

Ce deuxième exemple illustre bien le principe de la Data visualization : représenter visuellement des données chiffrées avec la plus grande efficacité. Le résultat de votre sélection de données doit pouvoir s'interpréter en un coup d’oeil.

Pour créer vos propres dataviz voici quelques sites qui propose la création de data visualization en ligne :

Infogr.am Permet de construire des dataviz au design soignées, et ce de manière très intuitive. Sans doute un des sites les plus puissants dans sa catégorie. Attention, les options avancées sont payantes.

Raw Création simple et éfficace de dataviz, un peu moins de choix que sur infogr.am mais totalement gratuit.

Highcharts.com Crée différents types de graphiques à partir de fichiers, CSV, fiche Google Spread, etc. Simple et Gratuit.

Base de données

 

DataPortals.org

Moteur de recherche de base de données

DataHub.io

Portail de base de données

Data.Europa.eu

Portail officiel des données ouvertes au niveau européen

EuropeanDataPortal.eu

Un autre portail de données ouvertes au niveau européen

Data.gouv.fr

Portail officiel des données ouvertes au niveau national

OpenPACA.fr

Base de données de la région PACA

Data.VistitProvence.com

Base de données autour du tourisme des Bouches-du-Rhône

NosDonnées.fr

Environ 300 jeux de données très divers

Agglo-PaysdAix.fr

Site de la métropole Aix Marseille Provence

Outils en ligne

 

Geofree

Conversion en ligne des coordonnées

umap

Permet de créer des cartes basées sur OpenStreetMap

Highcharts.com

Création de Dataviz en ligne

Infogr.am

Création de Dataviz en ligne

Raw

Création de Dataviz en ligne (gratuit)

Documentation en ligne

 

Forum OpenOffice

Topic sur une collection de fonctions CALC de conversions de coordonnées. Un grand merci à l’utilisateur PK1157.

CommentCaMarche

Article sur les fonctions SI, ET, OU, NON

hello-data

Site qui rassemble de nombreux outils sur la datavisualization