Les données géographiques sont la plupart du temps utilisées et traitées à l’aide de logiciels SIG, qui sont spécialement conçus pour manipuler des données spatiales avec précision et avec de nombreuses fonctionnalités, comme QGIS ou ArcGIS. Mais d'autres types d'outils, comme les outils de Business Intelligence (BI), qui ont vocation à représenter des données de manière générale – donc pas seulement des données spatiales – intègrent aussi aujourd’hui des fonctionnalités cartographiques. Utiliser un outil de BI comme Superset pour représenter des données géographiques peut présenter un intérêt dans des contextes où la cartographie s’inscrit dans une logique d’exploration ou de communication visuelle, qui accompagnent souvent d’autres types de graphiques, plutôt que d’analyse spatiale avancée. C’est le cas de deux logiciels propriétaires très connus, et probablement les plus utilisés, de datavisualisation : Tableau et Power BI.
C’est aussi le cas d’Apache Superset, aussi appelé Superset, plateforme open source de datavisualisation, que j’ai pu tester dans le cadre de mon travail en entreprise. En effet, Superset est distribué sous licence Apache 2.0, qui est une licence open-source. Superset permet de se connecter à différentes bases de données, ou bien de téléverser un fichier csv ou Excel, et d'explorer les données via des requêtes SQL et de les représenter sous forme de graphiques interactifs.
Concernant la cartographie, Superset propose plusieurs visualisations spatiales, rendues possibles grâce à l’intégration de la bibliothèque deck.gl, développée par Uber. Ci-dessous des exemples de graphiques réalisables sur Superset. Encadrés en rouge se trouvent les graphiques cartographiques, qui permettent l’ajout de géométries linéaires, ponctuelles ou polygonales, il y a également des cartes de pays (avec des fichiers geojson pré-intégrés), la possibilité de faire des cartes de chaleur (heatmap) ou encore la possibilité d’associer plusieurs couches (linéaires, polygonales…).

Deck.gl Polygon
J’ai surtout utilisé le graphique deck.gl polygon, qui permet d’afficher des polygones géographiques à partir de données au format GeoJSON. La version de Superset utilisée pour mes tests est la 4.1.2. Le format json accepté est néanmoins assez particulier, car il faut :
- D’une part, qu’il soit intégré dans un excel ou un csv (ou dans une base de données), on ne peut pas directement mettre le fichier geojson.
- D'autre part, qu’il respecte cette forme : {"type":"Feature","geometry":{"type":"Polygon","coordinates":[[[...]]]}}
Pour faciliter la conversion, j’ai utilisé ChatGPT pour produire un script, disponible ici sur github, permettant de récupérer un fichier excel ou csv avec tous les champs du fichier geojson transmis en entrée, et une colonne « geometry » correspondant au format mentionné ci-dessus. Cela ne concerne que les cas où un excel ou un csv sont utilisés en database. Les données utilisées étaient celles de l’observatoire des forêts de l’IGN.
Fonctionnalités appréciées
Les graphiques deck.gl polygon donnent la possibilité, une fois créés, d’utiliser plusieurs filtres qui permettent de rapidement visualiser un résultat selon des découpages géographiques différents, en choisissant également l’année ou d’autres types de paramètres. Comme on peut le voir dans les exemples ci-dessous, on peut passer d’un découpage du territoire à un autre (SER = Sylvoécorégions, GRECO = Grandes Régions Ecologiques), et changer d’années pour la date des données. C’est assez utile quand les données sont très nombreuses, et quand on souhaite les intégrer dans un Dashboard interactif où l’utilisateur peut moduler lui-même les filtres.


Exemple de filtre utilisable par l’utilisateur d’un Dashboard, assez simple d’utilisation :

Limites identifiées
A ce stade de mes tests, en gardant en tête que j’ai utilisé la version 4.1.2. et que donc certains éléments seront peut-être modifiés dans des versions futures, plusieurs limites ont été identifiées :
- Superset ne gère pas (encore) bien les multipolygones. C’est pourquoi dans le script mentionné plus haut chaque multipolygone repéré dans le fichier geojson transmis en entrée est éclaté en plusieurs polygones, et l’information est dupliquée pour chaque nouveau polygone. C’est assez problématique, notamment lorsqu’on discrétise, car une même entité se retrouve à compter plusieurs fois, ce qui ne permet plus d’utiliser les options automatiques de création de classe. Il faut les faire à la main.
- L’affichage : lorsqu’on passe la souris sur un polygone, il n’est pas possible de créer simplement des fenêtres contextuelles adaptées au polygone, qui donneraient des renseignements complémentaires en plus de la valeur numérique, comme le nom de la région, le département, etc. Pour obtenir un tel résultat, il faut forcément passer par du code en réalisant soi-même un plugin.

- Superset accepte seulement des géométries en coordonnées géographiques (latitude/longitude), dans le système de référence spatiale WGS 84, c’est-à-dire l'EPSG:4326.
Le graphique deck.gl polygon de Superset présente donc des limites, malgré une utilisation plutôt simple des filtres dans les dashboards. Malgré tout, cet outil reste intéressant aussi pour son aspect open-source qui le différencie des logiciels de datavisualisation très connus, propriétaires pour la plupart.