Sommaire
- Introduction
- Ce que ce parcours vous permettra de faire
- Le parcours d’apprentissage
- Pourquoi le SIG open source aujourd’hui
- Les concepts fondamentaux
- Les quatre maillons de la chaîne
- Les tutoriels de la série
- Quel outil pour quel besoin
- Adaptation au contexte local
- Erreurs fréquentes
- FAQ
Introduction
Une donnée géographique ne vaut rien tant qu’on ne peut pas la voir, l’interroger et la partager. Un fichier de coordonnées GPS, un export d’adresses, un fond de parcelles cadastrales : ce sont des trésors dormants tant qu’aucune chaîne d’outils ne les transforme en cartes exploitables. Le réflexe courant est de se tourner vers des plateformes propriétaires facturées à l’usage, dont les quotas se muent en factures imprévisibles et dont les clés d’API verrouillent vos projets. Pourtant, il existe une alternative complète, mûre et gratuite, utilisée par des administrations, des bureaux d’études et des entreprises du monde entier : la chaîne géospatiale open source.
Cette chaîne repose sur quatre piliers qui se complètent sans se chevaucher. QGIS est le poste de travail du cartographe : on y prépare, nettoie et analyse les données. PostGIS est le coffre-fort : une base de données qui stocke et interroge les objets spatiaux à grande échelle. GeoServer est le diffuseur : il expose ces données sous forme de services web standard. MapLibre GL JS est la vitrine : il affiche tout cela dans le navigateur, sans licence. Ensemble, ils couvrent l’intégralité du cycle de vie d’une donnée géographique, de l’import brut à la carte interactive en ligne.
Ce guide est la carte de route de l’ensemble. Il n’enseigne pas chaque manipulation pas à pas — c’est le rôle des tutoriels détaillés vers lesquels il oriente — mais il explique comment les pièces s’emboîtent, dans quel ordre les apprendre, et quel rôle joue chacune. Lisez-le d’abord pour comprendre la logique d’ensemble, puis suivez les tutoriels dans l’ordre proposé.
🎯 Ce que ce parcours vous permettra de faire
- Choisir le bon outil pour chaque étape d’un projet cartographique, sans payer de licence.
- Préparer et analyser des données spatiales dans QGIS : import, projection, jointures, zones tampons.
- Stocker et interroger ces données dans PostGIS, jusqu’au calcul d’itinéraires sur un réseau routier.
- Publier vos couches comme services web normalisés (WMS, WFS) avec GeoServer.
- Construire une carte web interactive avec MapLibre, alimentée par vos propres services.
- Diagnostiquer les pièges transversaux qui ruinent un projet SIG : systèmes de coordonnées, encodages, connexité des réseaux.
🗺️ Le parcours d’apprentissage
Le fil rouge de cette série est la construction d’un portail territorial : une carte web qui affiche des équipements (des écoles, dans nos exemples) répartis dans des communes, colorées selon leur densité, avec calcul d’itinéraires. Chaque tutoriel construit une brique de ce portail, et l’ordre n’est pas arbitraire — il suit le trajet naturel de la donnée.
- Commencez par les données avec QGIS : importer, corriger les coordonnées, styliser, analyser et exporter une donnée propre.
- Stockez et interrogez : posez d’abord les bases de PostGIS pour la cartographie (stockage, distance, polygones, index), puis franchissez un cap avec PostGIS et pgRouting pour calculer des itinéraires.
- Diffusez avec GeoServer : transformez votre base en services WMS et WFS.
- Affichez avec MapLibre GL JS : la carte web interactive qui consomme ces services.
Vous pouvez aussi piocher selon vos besoins immédiats : un analyste de bureau s’arrêtera à QGIS, un développeur back-end vivra surtout dans PostGIS et GeoServer, un intégrateur front-end commencera par MapLibre. Mais la première fois, suivre l’ordre complet donne une compréhension que les raccourcis ne procurent pas.
Pourquoi le SIG open source aujourd’hui
Trois forces rendent cette pile incontournable. D’abord la maturité : QGIS, PostGIS, GeoServer et MapLibre ne sont pas des projets expérimentaux mais des logiciels éprouvés, maintenus depuis des années, avec des cycles de publication réguliers. PostGIS est la référence du stockage spatial relationnel ; QGIS rivalise fonctionnellement avec les suites commerciales ; GeoServer implémente fidèlement les standards de diffusion ; MapLibre a pris la relève de Mapbox GL après son passage en licence fermée et fédère aujourd’hui une large communauté.
Ensuite l’interopérabilité. Ces outils dialoguent par des formats et des protocoles ouverts définis par l’Open Geospatial Consortium : WMS, WFS, GeoJSON, tuiles vectorielles. Aucun n’enferme vos données dans un format propriétaire. Vous pouvez remplacer un maillon sans réécrire les autres, ou brancher un outil tiers à n’importe quel point de la chaîne. Cette liberté est l’exact opposé du verrouillage des plateformes intégrées.
Enfin le coût. L’ensemble est gratuit, sans clé d’API ni quota. La seule dépense est l’hébergement, modulable selon vos moyens — d’un ordinateur de bureau pour l’analyse à un petit serveur pour la diffusion. Pour une organisation qui démarre, un service public au budget contraint ou un indépendant, cette gratuité change la nature des projets envisageables : on n’arbitre plus entre ambition cartographique et facture logicielle.
Les concepts fondamentaux
Avant de manipuler les outils, quatre notions reviennent partout et conditionnent la réussite de tout projet. Les maîtriser une fois, c’est s’épargner l’essentiel des blocages.
Vecteur et raster
Une donnée géographique se présente sous deux grandes formes. Le vecteur décrit des objets géométriques discrets — points (une école), lignes (une route), polygones (une commune) — chacun porteur d’attributs. Le raster, lui, est une grille de pixels, comme une image satellite ou un modèle d’altitude, où chaque cellule porte une valeur. La majorité du travail d’analyse territoriale se fait sur du vecteur ; le raster intervient pour l’imagerie et les surfaces continues. Cette série se concentre sur le vecteur, du point à l’itinéraire.
Le système de coordonnées de référence
C’est le concept le plus important et le plus négligé. Un système de coordonnées de référence (CRS) décrit comment des nombres se traduisent en positions sur le globe. Les coordonnées GPS s’expriment en degrés dans le système mondial WGS84 (code EPSG:4326). Mais pour mesurer des distances, des surfaces ou tracer des zones tampons, il faut un système métrique local, comme une zone UTM (par exemple EPSG:32628 pour l’ouest du continent), qui exprime les positions en mètres. Confondre les deux est la cause numéro un des cartes vides, des objets égarés en plein océan et des distances absurdes. Chaque maillon de la chaîne reposera la question du CRS — et chaque tutoriel y consacre une étape dédiée.
Le modèle source/couche
Partout, on distingue la donnée (la source : une table, un fichier, un service) de sa représentation (la couche : comment on la dessine). Une même source peut nourrir plusieurs couches — un remplissage et un contour, ou des couleurs différentes selon un attribut. QGIS, GeoServer et MapLibre partagent tous ce modèle. Le comprendre une fois, c’est le retrouver partout.
Standards et formats d’échange
La chaîne tient parce que ses maillons parlent la même langue. Le GeoJSON transporte des entités vectorielles en texte lisible. Les services WMS (des images de carte) et WFS (des entités vectorielles) sont les protocoles de diffusion standard. Les tuiles vectorielles découpent les données en carreaux pour un affichage web fluide à grande échelle. Connaître ces quelques formats suffit à comprendre comment l’information circule d’un bout à l’autre.
Les quatre maillons de la chaîne
Chaque outil occupe une place précise. Les confondre, ou vouloir en faire faire un à la place d’un autre, est une erreur fréquente. Voici le rôle de chacun et son point d’entrée dans la série.
QGIS — le poste de travail
QGIS est une application de bureau : on l’ouvre sur son ordinateur pour explorer visuellement des données, les corriger, les croiser et produire des cartes ou des exports. C’est l’outil de l’analyste et du cartographe. Il lit pratiquement tous les formats, offre des centaines d’outils d’analyse spatiale, et sert de pont vers PostGIS (il importe et exporte directement vers la base). On y prépare la matière première propre dont tout le reste dépend. Le tutoriel QGIS : importer, styliser et analyser des données spatiales couvre cette étape de bout en bout.
PostGIS — le coffre-fort spatial
PostGIS étend la base de données PostgreSQL avec des types et des fonctions géographiques. Là où QGIS manipule des fichiers à l’échelle humaine, PostGIS stocke des millions d’objets et répond à des requêtes spatiales complexes en SQL : que se trouve-t-il dans ce rayon, quels polygones se recoupent, quel est le plus court chemin sur ce réseau. C’est le moteur de calcul qui industrialise l’analyse. Deux niveaux de lecture : les fondations dans PostGIS pour la cartographie, puis le calcul d’itinéraires dans PostGIS et pgRouting.
GeoServer — le diffuseur
Une base de données ne s’expose jamais directement sur Internet. GeoServer s’intercale : il lit PostGIS côté serveur et publie les couches sous forme de services web standard, sans révéler la base ni ses identifiants. Il parle WMS pour servir des images, WFS pour servir des entités, et met les tuiles en cache pour la performance. C’est le maillon qui rend vos données consommables par n’importe quel client cartographique. Le tutoriel GeoServer : publier des couches WMS et WFS depuis PostGIS détaille l’installation et la publication.
MapLibre GL JS — la vitrine
MapLibre est une bibliothèque JavaScript qui affiche des cartes interactives dans le navigateur, en exploitant l’accélération graphique pour un rendu fluide. Elle consomme les services de GeoServer, applique des styles pilotés par les données, et rend les objets cliquables. C’est ce que voit et manipule l’utilisateur final. Libre et sans clé d’API, elle clôt la chaîne. Le tutoriel MapLibre GL JS : afficher une carte web avec des tuiles vectorielles construit l’interface complète.
Les tutoriels de la série
Chaque tutoriel ci-dessous construit une brique du portail territorial et peut aussi se suivre isolément selon votre besoin :
- QGIS : importer, styliser et analyser des données spatiales — préparer une donnée propre et projetée.
- PostGIS pour la cartographie — les fondations du stockage spatial (points, distances, polygones, index).
- PostGIS et pgRouting : calculer des itinéraires — router sur un vrai réseau routier.
- GeoServer : publier des couches WMS et WFS — exposer la base en services web.
- MapLibre GL JS : afficher une carte web — l’interface interactive finale.
Quel outil pour quel besoin
La confusion la plus fréquente consiste à vouloir tout faire avec un seul maillon. Voici comment trancher selon l’objectif réel.
| Votre besoin | L’outil adapté |
|---|---|
| Explorer et analyser visuellement des données | QGIS |
| Stocker de gros volumes et requêter en SQL | PostGIS |
| Calculer des itinéraires ou des zones d’accessibilité | PostGIS + pgRouting |
| Exposer des données à des applications tierces | GeoServer (WMS / WFS) |
| Afficher une carte interactive dans un site web | MapLibre GL JS |
| Produire une carte imprimable haute résolution | QGIS (mise en page) |
Dans un projet réel, ces rôles se combinent : on prépare dans QGIS, on stocke et calcule dans PostGIS, on diffuse via GeoServer, on affiche avec MapLibre. Mais beaucoup de projets n’ont besoin que d’une partie de la chaîne — inutile de monter un serveur de diffusion pour une analyse ponctuelle qui s’arrête à un export QGIS.
Adaptation au contexte local
Cette pile est particulièrement pertinente là où le budget logiciel est une contrainte forte. Tout est gratuit, et les besoins matériels sont modestes : QGIS tourne sur un ordinateur de bureau ordinaire, et un petit serveur virtuel — facturable mensuellement, parfois réglable en mobile money chez plusieurs hébergeurs régionaux — suffit à faire tourner PostGIS et GeoServer pour une ville moyenne. Les données ouvertes ne manquent pas : OpenStreetMap fournit routes et bâtiments téléchargeables, et les agences nationales de statistique publient souvent des limites administratives en formats standard.
Deux réflexes économisent beaucoup d’argent et de frustration. D’abord, travailler hors-ligne autant que possible : QGIS met les fonds en cache et les couches vectorielles chargées localement ne consomment plus de bande passante, un atout réel là où la connexion est coûteuse ou intermittente. Ensuite, héberger ses propres fonds de carte et activer le cache de tuiles de GeoServer : on évite les quotas des services commerciaux et on ménage la bande passante du serveur. Enfin, choisir le bon système métrique selon la longitude — la zone UTM appropriée — conditionne la justesse de toute mesure de distance ou de surface.
Erreurs fréquentes à éviter
| Erreur | Cause | Solution |
|---|---|---|
| Objets placés au large de l’Afrique | Coordonnées en mètres interprétées comme des degrés, ou X/Y inversés | Vérifier et harmoniser le CRS à chaque maillon ; reprojeter en sortie web (EPSG:4326) |
| Distances et surfaces absurdes | Calcul effectué en degrés (EPSG:4326) | Reprojeter en système métrique (UTM) avant toute mesure |
| Base de données exposée sur Internet | Tentative de connexion directe depuis le navigateur | Intercaler GeoServer ; ne publier que des services WMS/WFS |
| Carte web vide sans erreur visible | Conteneur sans hauteur, ou partage entre origines bloqué | Hauteur CSS explicite ; activer le CORS ou un proxy |
| Itinéraire introuvable | Réseau routier déconnecté | Diagnostiquer la topologie, recoudre dans QGIS |
| Accents illisibles | Encodage mal détecté à l’import | Forcer l’UTF-8 dès QGIS |
Le trajet d’une donnée, du fichier à l’écran
Pour saisir comment les maillons coopèrent, suivons une seule information — disons la position d’une école — tout au long de la chaîne. Au départ, ce n’est qu’une ligne dans un tableur : un nom, un type, une longitude, une latitude. Dans QGIS, cette ligne devient un point visible sur une carte ; on vérifie qu’il tombe au bon endroit, on corrige une éventuelle inversion de coordonnées, on lui associe la commune qui le contient par une jointure spatiale, et on reprojette le tout dans un système métrique pour pouvoir mesurer des distances. L’école est désormais une donnée propre et qualifiée.
On la verse alors dans PostGIS, où elle rejoint des milliers d’autres dans une table indexée. Là, elle cesse d’être un objet qu’on regarde pour devenir un objet qu’on interroge : on peut demander en une requête toutes les écoles à moins de cinq cents mètres d’une route, ou calculer le plus court chemin pour s’y rendre. La même donnée, désormais, répond à des questions. Vient ensuite GeoServer, qui n’altère pas l’école mais la rend publiable : il l’expose au monde extérieur sous forme de service standard, en GeoJSON reprojeté en longitude/latitude, sans jamais ouvrir la base elle-même. Enfin, MapLibre récupère ce GeoJSON dans le navigateur, dessine l’école en cercle coloré selon son type, et la rend cliquable : l’utilisateur final voit son nom apparaître dans une bulle. La boucle est bouclée — la ligne de tableur est devenue une carte vivante, sans qu’aucun maillon n’ait eu à dupliquer le travail d’un autre.
Ce trajet illustre une règle d’or : chaque outil transforme la donnée selon sa spécialité et la transmet au suivant dans un format ouvert. Aucun ne tente de faire le travail de son voisin. C’est cette division claire des rôles qui rend la chaîne robuste et remplaçable maillon par maillon.
Au-delà des quatre maillons : l’écosystème
Les quatre outils de ce parcours ne sont pas seuls ; ils s’inscrivent dans un écosystème open source plus large qu’il est utile de connaître pour ne pas réinventer ce qui existe. En coulisses, presque tout repose sur GDAL/OGR, une bibliothèque de conversion qui lit et écrit des centaines de formats géographiques — c’est elle qui anime la commande ogr2ogr utilisée pour importer des données dans PostGIS, et c’est elle que QGIS appelle pour ouvrir vos fichiers. La connaître, c’est disposer d’un couteau suisse pour tout convertir en ligne de commande.
Côté affichage, MapLibre n’est pas la seule option. Leaflet reste un choix solide et léger pour des cartes à base de tuiles images, et OpenLayers — celui-là même que GeoServer embarque pour ses aperçus — couvre des besoins avancés en projections et en services normalisés. Côté diffusion, GeoServer a des cousins plus légers : des serveurs spécialisés dans les tuiles vectorielles, capables de servir directement depuis PostGIS, conviennent quand on n’a pas besoin de toute la richesse de GeoServer. Pour fabriquer des jeux de tuiles vectorielles à partir de gros volumes, des outils dédiés produisent des archives compactes servies depuis un simple fichier, sans serveur de tuiles permanent.
Inutile de tout adopter d’emblée : les quatre maillons de ce guide suffisent à couvrir l’essentiel d’un projet, de la donnée à la carte web. Mais savoir que cet écosystème existe évite deux écueils symétriques — croire qu’un outil sait tout faire, et croire qu’il faut tout coder soi-même. La plupart des besoins ont déjà une réponse open source éprouvée ; le réflexe gagnant est de chercher le bon outil avant d’écrire la première ligne de code.
FAQ
Q : Faut-il tout apprendre, ou puis-je n’utiliser qu’un seul outil ?
R : Chaque maillon est utile seul. Un analyste peut se contenter de QGIS, un développeur back-end de PostGIS et GeoServer. La chaîne complète n’est nécessaire que pour publier une carte web alimentée par une base. Apprenez selon votre objectif réel.
Q : Cette pile remplace-t-elle vraiment les solutions commerciales ?
R : Pour l’immense majorité des besoins d’analyse, de stockage, de diffusion et d’affichage, oui. Les suites propriétaires gardent un avantage sur certaines fonctions très spécialisées, mais le rapport coût-capacité de la pile open source est imbattable pour démarrer et pour la plupart des projets.
Q : Dans quel ordre installer les outils ?
R : QGIS d’abord, car il sert à préparer et inspecter les données. Puis PostGIS pour le stockage. GeoServer ensuite, une fois la base prête. MapLibre en dernier, puisqu’il consomme les services. C’est l’ordre des tutoriels.
Q : Le système de coordonnées est-il vraiment si important ?
R : Oui, c’est la source d’erreur dominante. Un CRS mal géré produit des cartes vides, des objets égarés et des mesures fausses. Chaque tutoriel y consacre une étape : ce n’est pas un détail technique mais le fondement de la justesse géographique.
Q : Quelles versions utiliser ?
R : Au moment d’écrire, privilégiez QGIS en version stable à long terme, PostGIS 3.6, GeoServer 2.28 (série de production), et MapLibre GL JS 5.x. Les tutoriels indiquent les versions précises et leurs prérequis.
Q : Peut-on gérer de très gros volumes de données ?
R : Oui. PostGIS gère des millions d’objets avec les bons index, GeoServer met les tuiles en cache, et MapLibre bascule sur des tuiles vectorielles quand le GeoJSON ne suffit plus. La chaîne est conçue pour monter en charge progressivement.
Pour aller plus loin
- Documentation officielle : QGIS, PostGIS, pgRouting, GeoServer, MapLibre GL JS.
- Par où commencer : suivez le tutoriel QGIS, première brique du portail.