Shapefile, GeoJSON, GeoPackage, KML, GeoTIFF, FlatGeobuf, GeoParquet… Le monde géographique compte des centaines de formats. Bonne nouvelle : une poignée suffit pour 95 % des usages. Voici comment choisir.
Vecteur ou raster ?
- Vecteur : des objets décrits par des coordonnées (points, lignes, polygones) avec des attributs. Routes, bâtiments, limites administratives.
- Raster : une grille de pixels dont chacun porte une valeur. Photos aériennes, modèles d'élévation, températures.
Les formats vecteur
GeoJSON — l'universel du web
{
"type": "Feature",
"properties": { "nom": "Mont Blanc", "altitude": 4806 },
"geometry": { "type": "Point", "coordinates": [6.8652, 45.8326] }
}
+ lisible, natif en JavaScript, supporté partout. − verbeux, lent au-delà de quelques dizaines de Mo, toujours en WGS84 (RFC 7946). Testez vos fichiers avec notre visionneuse SIG, qui lit aussi Shapefile, GeoPackage et DXF.
GeoPackage — le format de travail recommandé
Une base SQLite standardisée par l'OGC. + un seul fichier, plusieurs couches, vecteur et raster, noms de champs longs, index spatial, n'importe quel système de coordonnées. C'est le format par défaut de QGIS et le meilleur choix pour échanger des données de travail.
Shapefile — l'ancêtre tenace
Créé par Esri en 1998, toujours omniprésent. Mais ses limites sont nombreuses :
- au moins 3 fichiers obligatoires (
.shp,.shx,.dbf), plus souvent.prjet.cpg; - noms de champs limités à 10 caractères ;
- 2 Go maximum, un seul type de géométrie par fichier ;
- problèmes d'encodage des accents si le
.cpgmanque.
Un Shapefile sans fichier .prj n'a pas de système de coordonnées déclaré : il faudra le deviner. Transmettez toujours tous les fichiers, idéalement dans un ZIP.
Les formats modernes
- FlatGeobuf : binaire, très rapide, lisible en streaming par HTTP. Excellent pour le web.
- GeoParquet : orienté colonnes, compressé, parfait pour l'analyse de gros volumes (DuckDB, GeoPandas).
- KML/KMZ : hérité de Google Earth, pratique pour le grand public mais limité pour l'analyse.
Les formats raster
- GeoTIFF : le standard. Supporte compression, pyramides, plusieurs bandes, données en virgule flottante.
- COG (Cloud Optimized GeoTIFF) : un GeoTIFF organisé en tuiles internes, lisible partiellement à distance. Le format de choix pour publier de l'imagerie.
- JPEG 2000 / ECW : forte compression pour les orthophotos.
- NetCDF : données multidimensionnelles (climat, océanographie).
Tableau de décision
| Situation | Format conseillé |
|---|---|
| Afficher sur une carte web | GeoJSON (petit) ou FlatGeobuf / tuiles vectorielles (gros) |
| Travailler dans QGIS, échanger avec un collègue | GeoPackage |
| Analyse de millions d'entités | GeoParquet |
| Livrer à un client qui « veut du shape » | Shapefile (zippé, avec .prj et .cpg) |
| Imagerie, MNT | COG / GeoTIFF |
Convertir avec GDAL
ogr2ogr (vecteur) et gdal_translate (raster) convertissent entre tous ces formats :
# Shapefile → GeoPackage, reprojeté en Lambert 93
ogr2ogr -f GPKG communes.gpkg communes.shp -t_srs EPSG:2154 -nln communes
# GeoPackage → GeoJSON (forcément en WGS84)
ogr2ogr -f GeoJSON communes.geojson communes.gpkg -t_srs EPSG:4326 -lco COORDINATE_PRECISION=6
# Filtrer pendant la conversion
ogr2ogr -f GPKG grandes_villes.gpkg communes.gpkg -where "population > 100000"
# GeoTIFF → Cloud Optimized GeoTIFF
gdal_translate ortho.tif ortho_cog.tif -of COG -co COMPRESS=DEFLATE
ogrinfo -so fichier.gpkg nom_couche affiche le résumé d'une couche : nombre d'entités, emprise, système de coordonnées et liste des champs. Le premier réflexe face à une donnée inconnue.
Démonstration
Trois fontaines, un parcours et une place : les mêmes données écrites en GeoJSON, KML, GPX et CSV.
À essayer : passez d'un format à l'autre (le contenu s'affiche sous la carte) et comparez les tailles. Remarquez que le GPX perd la place (il ne connaît pas les polygones), et téléchargez un format pour l'ouvrir dans QGIS.