Si vous vous souciez de la taille ou de la topologie du fichier, utilisez TopoJSON. Si vous ne vous souciez pas de l'un ou de l'autre, utilisez GeoJSON par souci de simplicité.
Le principal avantage de TopoJSON est la taille. En éliminant la redondance et en utilisant un codage entier à précision fixe plus efficace des coordonnées, les fichiers TopoJSON sont souvent d'un ordre de grandeur plus petit que les fichiers GeoJSON. L'avantage secondaire des fichiers TopoJSON est que l'encodage de la topologie a des applications utiles, telles que la simplification de la préservation de la topologie (similaire à MapShaper ) et la génération automatique de maillage (comme dans les limites état-état dans cet exemple choropleth ).
Ces avantages ont un coût: un format de fichier plus complexe. En JavaScript, par exemple, vous utiliseriez généralement la bibliothèque cliente TopoJSON pour convertir TopoJSON en GeoJSON pour une utilisation avec des outils standard tels que d3.geoPath . (En Python, vous pouvez utiliser topojson.py .) De plus, le format entier de TopoJSON nécessite des coordonnées de quantification, ce qui signifie qu'il peut introduire une erreur d'arrondi si vous ne faites pas attention. (Voir la documentation pour topojson -q
.)
Pour la manipulation côté serveur de géométries qui ne nécessitent pas de topologie, GeoJSON est probablement le choix le plus simple. Sinon, si vous avez besoin d'une topologie ou si vous souhaitez envoyer la géométrie sur le fil à un client, utilisez TopoJSON.