Ressources · Étude de cas

SonoMap, un moteur de cartes

Cinq représentations, du son, et aucune dépendance

SonoMap est un moteur de cartographie statistique développé par Limbus Studio. Il permet de publier une carte interactive à partir d’un simple fichier CSV, en quelques minutes, sans compétence technique. Cinq formes de représentation, neuf fonds de carte, une sonification des données, et pas une ligne de bibliothèque tierce. Récit d’un projet, y compris de ce que l’assistance d’une IA y a changé, et de ce qu’elle n’a pas pu faire.

Voir la démonstration

Aperçu de SonoMap

SonoMap : cartogramme de l’Afrique, chaque pays représenté par un carré coloré selon la valeur d’un indicateur, avec une timeline de 2017 à 2026 sous la carte SonoMap : panneau de réglages en quatre colonnes (Carte, Couleurs, Animation, Sonification), avec l’éditeur de palette et le choix des sons SonoMap : tableau de données, sélection des années et des indicateurs, édition des valeurs pays par pays

SonoMap : construire un moteur de cartographie statistique

Le compromis que tous les outils imposent

Cartographier une donnée devrait être simple. En pratique, les outils disponibles forcent un choix.

Les uns sont puissants mais réservés aux techniciens : D3, QGIS, les bibliothèques de rendu. Ils permettent tout, à condition de savoir programmer. Un rédacteur n’y touchera jamais.

Les autres sont accessibles mais génériques : quelques clics, une carte correcte, et un rendu que l’on reconnaît immédiatement : celui de l’outil, pas celui de la marque. La finesse graphique n’y est pas, et la dépendance à une plateforme tierce non plus.

Il manquait le milieu : une interface qu’un rédacteur maîtrise, un rendu qu’un studio de design assume, et aucune dépendance à personne. C’est ce que Limbus Studio a construit avec SonoMap.

Ce que fait l’outil

Un fichier CSV, quelques minutes, une carte interactive publiée. Cinq formes de représentation, chacune répondant à une question différente.

  • La choroplèthe : chaque territoire coloré selon une valeur, par paliers configurables. Pour comparer une même grandeur entre territoires.
  • Les symboles : des pastilles posées sur les territoires, une par indicateur. Quand plusieurs coexistent au même endroit, ils se regroupent automatiquement en grille compacte. Forme et taille se règlent indicateur par indicateur.
  • Les cercles proportionnels : pour des volumes comparables. Le rayon suit la racine carrée de la valeur : l’œil compare des surfaces, pas des rayons, et doubler le rayon quadruplerait la perception.
  • Le cartogramme : la géométrie s’efface au profit de la donnée. Cinq formes disponibles, du carré à l’hexagone.
  • Les symboles proportionnels multiples : quand volume et catégorie doivent se lire ensemble.

Neuf fonds de carte sont livrés, du monde entier jusqu’à l’échelle d’une ville. Huit palettes sont enregistrées. Les données peuvent porter sur plusieurs années : l’outil anime alors la transition d’une année à l’autre.

Ce qui n’est pas là, et c’est volontaire : pas de D3, pas de Leaflet, pas de Mapbox, pas de TopoJSON, aucune API tierce. SonoMap est écrit en SVG natif. Limbus Studio n’a pas assemblé des briques, le studio a écrit le moteur.

La chaîne de production des fonds de carte

C’est la partie invisible, et la plus déterminante. Toute la géographie vient de Natural Earth, la référence libre du domaine. Limbus Studio a construit un pipeline automatisé qui télécharge les données brutes, les projette (Robinson pour le monde, Lambert-93 pour les échelles françaises), les découpe par continent et par pays, les optimise, et produit environ 250 fichiers SVG prêts à l’usage.

Chaque territoire porte un identifiant ISO stable. Chaque tracé est nettoyé. Chaque frontière contestée est traitée de façon neutre. Le pipeline corrige même certains défauts connus du jeu de données source : des identifiants manquants sur certains pays selon les versions.

Le résultat : des cartes vectorielles fidèles, légères, et qui n’appellent aucun serveur extérieur au chargement.

Le son comme seconde lecture

SonoMap ne se contente pas de montrer : il fait entendre. La sonification traduit la donnée en son, et l’animation d’une série temporelle devient alors perceptible à l’oreille autant qu’à l’œil.

Ce n’est pas un effet. C’est d’abord une question d’accessibilité : une carte reste, par nature, hors de portée des personnes qui ne voient pas. Le son ouvre la donnée à ces publics. Et il révèle parfois autre chose : l’oreille perçoit des rythmes et des ruptures que l’œil, occupé à comparer des teintes, laisse passer.

Concrètement, c’est la hauteur qui porte la donnée : chaque valeur devient une note, les valeurs basses sonnent grave, les hautes sonnent aigu. Pour que le résultat reste musical plutôt que criard, les notes sont contraintes à une gamme (par défaut une pentatonique mineure, qui n’a pas de fausse note), sur une étendue d’octaves réglable. Le reste relève du choix éditorial : un timbre d’instrument (kalimba, pluck, harpe, cloche ou crystal) et une tessiture générale (grave, moyenne, aiguë). Quand la carte anime une série temporelle, les notes s’égrènent au rythme de la timeline, et l’évolution d’une année à l’autre s’entend comme une phrase mélodique.

L’interface éditeur, là où tout se joue

C’est le point de rupture de la plupart des outils, et c’est là que Limbus Studio a mis le plus d’énergie.

  • Import CSV en une étape, avec détection automatique du type de chaque colonne.
  • Édition en place, ligne par ligne, avec sauvegarde asynchrone et indicateur de modifications non enregistrées.
  • Un sélecteur de couleur unifié : partout où l’on choisit une couleur, on retrouve la même interface. Code hexadécimal, bibliothèque de palettes, aperçu immédiat.
  • Un aperçu en temps réel des symboles : forme, couleur et taille se règlent en voyant le résultat.
  • Des interactions publiques discrètes : au survol d’un territoire, un filet fin sombre apparaît, plutôt qu’un changement de couleur qui trahirait la donnée qu’on est justement en train de lire.

Ce dernier point résume l’état d’esprit. Un survol qui repeint un pays en bleu détruit l’information que la choroplèthe portait. Un filet d’un pixel signale la même chose sans rien effacer. C’est le genre d’arbitrage qu’aucune spécification ne contient, et qui fait la différence entre un outil utilisable et un outil juste.

Ce que l’IA a fait, et ce qu’elle n’a pas fait

SonoMap a été développé avec l’assistance de Claude, l’assistant d’Anthropic. Autant le dire clairement plutôt que de laisser croire à une prouesse solitaire.

Ce que cette assistance a apporté : de la vitesse d’écriture, une aide au débogage, la capacité de tenir une trentaine d’étapes documentées sans perdre le fil, et un interlocuteur pour éprouver une hypothèse technique à voix haute.

Ce qu’elle n’a pas apporté, et ne pouvait pas apporter :

  • Savoir que le survol ne doit pas repeindre le pays. Cela ne s’écrit pas dans une spécification. Cela vient d’avoir vu des cartes rater pour cette raison.
  • Choisir la racine carrée pour le rayon. La règle est connue ; savoir qu’elle compte, et pourquoi, relève du métier.
  • Décider quelles cinq représentations valaient la peine d’exister, et lesquelles étaient des gadgets.
  • Concevoir l’interface éditeur. Un rédacteur n’est pas un développeur : chaque écran a été pensé pour quelqu’un qui a une carte à publier, pas un modèle de données à comprendre.
  • Trancher les compromis. Que garder, que retirer, que refuser. C’est le travail, et il n’est pas délégable.

Autrement dit : l’IA écrit vite le code qu’on lui décrit. Elle ne sait pas ce qu’il faut décrire. Vingt ans de design et de développement servent précisément à cela : savoir quoi demander, et reconnaître quand la réponse est mauvaise.

L’itération courte, comme méthode

Le projet s’est construit en une trentaine d’étapes documentées, chacune validée par un test concret avant de passer à la suivante. Les livraisons se font par deux à six fichiers, jamais par blocs entiers.

Cette discipline n’a rien d’une coquetterie. Elle permet de corriger vite, d’ajuster une couleur ou un comportement au survol, et de ne jamais se retrouver devant un ensemble cassé dont on ne sait plus quelle modification est responsable. Elle vaut avec ou sans assistance d’IA, mais elle devient indispensable avec, parce que la vitesse d’écriture augmente et que le risque d’accumuler des erreurs non détectées augmente avec elle.

De l’application à l’extension

SonoMap est né comme une application sur mesure. Il a ensuite été porté en extension WordPress, pour être utilisable depuis l’administration d’un site, là où travaillent les rédacteurs, sans qu’ils aient à changer d’outil ni à demander l’aide de quiconque.

L’outil est en production et continue d’évoluer. Les chantiers en cours portent sur les valeurs de référence configurables, un export enrichi, et la poursuite du travail d’accessibilité.

Questions fréquentes

Qu’est-ce qu’une carte choroplèthe ?

Une carte où chaque territoire est coloré selon une valeur numérique, par paliers. C’est la forme la plus lisible pour comparer une même grandeur entre territoires. Elle suppose des paliers bien choisis : un découpage mal calibré peut trahir la donnée qu’il est censé montrer.

Pourquoi développer son propre moteur de cartes plutôt qu’utiliser une bibliothèque ?

Les bibliothèques existantes imposent un compromis : puissantes mais réservées aux techniciens, ou accessibles mais génériques. SonoMap a été développé par Limbus Studio en SVG natif, sans D3, sans Leaflet et sans API tierce, pour garder la finesse graphique d’un studio de design et l’autonomie d’un outil qui ne dépend de personne.

D’où viennent les fonds de carte de SonoMap ?

De Natural Earth, la référence libre du domaine. Limbus Studio a construit un pipeline automatisé qui télécharge les données brutes, les projette, les découpe par continent et par pays, les optimise, et produit environ 250 fichiers SVG. Aucune dépendance à une API cartographique tierce.

Qu’est-ce que la sonification de données ?

La traduction de données en son. Là où un graphique s’adresse à l’œil, la sonification s’adresse à l’oreille : elle rend une évolution perceptible autrement, et ouvre la donnée aux publics que le visuel laisse de côté. C’est une expertise rare, que Limbus Studio pratique depuis plusieurs années.

Pourquoi le rayon d’un cercle proportionnel suit-il la racine carrée de la valeur ?

Parce que l’œil compare des surfaces, pas des rayons. Doubler le rayon quadruple la surface perçue : une valeur deux fois plus grande paraîtrait quatre fois plus grande. La racine carrée rétablit la correspondance entre la donnée et ce que le lecteur perçoit.

SonoMap est-il disponible comme extension WordPress ?

L’outil a été conçu comme une application sur mesure, puis porté en extension WordPress pour être utilisable depuis l’administration d’un site, sans compétence technique. Il est en production sur des projets de Limbus Studio.

Un projet qui gagnerait à s’appuyer sur des cartes ?

Sans dépendre d’une plateforme tierce, ni sacrifier la finesse graphique.

Voir la démonstration

À lire aussi

Écrivez-nous

Dites-nous en deux lignes ce que vous cherchez à faire. Réponse sous 48 heures.