Convertir un shapefile en GeoJSON

Gratuit, privé et rapide : tout se passe dans votre navigateur, vos fichiers Shapefile ne sont jamais envoyés.

Shapefile en GeoJSON : pourquoi convertir ?

Le shapefile est le format d'échange standard des SIG de bureau, mais les cartes web, JavaScript et la plupart des API veulent du GeoJSON. Ce convertisseur lit votre shapefile, le reprojette en WGS84 comme l'exige la norme GeoJSON, et vous donne un seul fichier .geojson prêt pour Leaflet, MapLibre, Mapbox, D3 ou GitHub. Chargez le shapefile sous forme de .zip ou sélectionnez tous ses fichiers en même temps. La conversion se fait dans votre navigateur avec GDAL : les données ne quittent jamais votre ordinateur.

Comment convertir Shapefile en GeoJSON

  1. Déposez un .zip contenant votre shapefile, ou sélectionnez ensemble les fichiers .shp, .shx, .dbf et .prj.
  2. Vérifiez l'aperçu sur la carte et le système de coordonnées détecté.
  3. Cliquez sur Convertir et téléchargez votre fichier GeoJSON.

Ce qui change lors de la conversion

Il vous faut le fichier .prj

Le GeoJSON doit être en longitude et latitude WGS84 : le convertisseur reprojette donc vos données. Il lit le système de coordonnées source dans le fichier .prj. Sans lui, des coordonnées qui ressemblent à des longitudes et latitudes sont considérées comme du WGS84 ; sinon, on vous demande de saisir le code EPSG, par exemple EPSG:2154 pour le Lambert-93 ou EPSG:32631 pour UTM zone 31N.

Chargez toutes les parties

Un shapefile se compose de plusieurs fichiers. Les fichiers .shp, .shx et .dbf sont obligatoires, le .prj et le .cpg sont fortement recommandés. Ne sélectionner que le fichier .shp est la cause la plus fréquente d'échec d'une conversion.

Encodage des caractères spéciaux

Le fichier .cpg indique quel encodage de texte utilise la table attributaire. Sans lui, le convertisseur lit l'UTF-8 valide comme de l'UTF-8 et utilise sinon la page de codes indiquée dans l'en-tête du .dbf, ou Windows-1252 s'il n'y en a pas. Si des noms affichent encore des caractères bizarres, ajoutez un .cpg avec le bon encodage.

Le fichier devient plus lourd

Le GeoJSON est du texte : il est donc souvent plusieurs fois plus volumineux que le shapefile. Les coordonnées sont écrites avec 7 décimales (environ 1 cm), ce qui limite la taille sans perte visible.

Dates et nombres

Les champs de date deviennent du texte au format AAAA-MM-JJ. Les nombres restent des nombres. Les champs numériques vides du .dbf peuvent devenir 0 ou null selon la façon dont le shapefile a été écrit.

À propos des formats

Shapefile

Le shapefile Esri est le format vectoriel SIG le plus répandu. Un « shapefile » est en réalité un ensemble de fichiers portant le même nom : le .shp contient la géométrie, le .shx un index, le .dbf la table attributaire, le .prj facultatif le système de coordonnées et le .cpg l'encodage du texte.

  • Il faut au moins les fichiers .shp, .shx et .dbf. Chargez-les ensemble ou dans un seul .zip.
  • Les noms de champs sont limités à 10 caractères et les valeurs texte à 254 caractères.
  • Chaque shapefile ne contient qu'un seul type de géométrie : points, lignes ou polygones.
  • Sans fichier .prj, le système de coordonnées est inconnu.

GeoJSON

Le GeoJSON est un format texte JSON pour les objets géographiques, normalisé en 2016 sous le nom RFC 7946. C'est le format natif des cartes web comme Leaflet, MapLibre et Mapbox, ainsi que de nombreuses API.

  • Les coordonnées sont une longitude et une latitude WGS84 (dans cet ordre).
  • Points, lignes et polygones peuvent être mélangés dans un même fichier.
  • Les propriétés peuvent être n'importe quelle valeur JSON, sans limite de longueur pour les noms de champs.

Questions fréquentes

Puis-je charger uniquement le fichier .shp ?

Non. Sans le .dbf, il n'y a pas d'attributs, et sans le .shx, la plupart des lecteurs refusent le fichier. Compressez le dossier et chargez le .zip, ou sélectionnez en une fois tous les fichiers portant le même nom.

Et si mon zip contient plusieurs shapefiles ?

Chaque shapefile est converti en un fichier GeoJSON distinct, et vous les téléchargez ensemble dans un .zip.

Mon dossier contient aussi des fichiers .sbn, .sbx, .shp.xml et autres. Est-ce un problème ?

Non. Déposez le dossier entier ou compressez-le tel quel. Seuls les fichiers .shp, .shx, .dbf, .prj et .cpg sont lus ; les index spatiaux, métadonnées, styles et fichiers de verrouillage d'ArcGIS ou de QGIS sont ignorés.

Pourquoi mes coordonnées sont-elles différentes dans le GeoJSON ?

Elles ont été reprojetées du système de coordonnées de votre shapefile vers la longitude et la latitude WGS84, comme l'exige la norme GeoJSON (RFC 7946). Les entités se trouvent au même endroit sur la carte.

Mes données sont-elles envoyées ?

Non. C'est votre navigateur qui fait la conversion. Rien ne quitte votre ordinateur.