Was ist Topojson und wie unterscheidet es sich von Geojson?


18

Dies ist eine konzeptionelle Frage.

Was sind die Unterschiede zwischen diesen? und was sind die Vor- und Nachteile dieser Formate?

Antworten:


18

Laut Mike Bostock (und anderen Mitwirkenden an der TopoJSON-Erweiterung):

TopoJSON ist eine Erweiterung von GeoJSON, die die Topologie codiert. Anstatt Geometrien diskret darzustellen, werden Geometrien in TopoJSON-Dateien aus gemeinsam genutzten Liniensegmenten zusammengefügt, die als Bögen bezeichnet werden. TopoJSON eliminiert Redundanz und bietet viel kompaktere Darstellungen der Geometrie als mit GeoJSON. Typische TopoJSON-Dateien sind 80% kleiner als ihre GeoJSON-Entsprechungen. Darüber hinaus unterstützt TopoJSON Anwendungen, die eine Topologie verwenden, z. B. topologieerhaltende Formvereinfachung, automatische Kartenfärbung und Kartogramme.

Ein möglicher Nachteil von TopoJSON ist, dass Sie die Unterstützung für die Konvertierung von TopoJSON zurück in GeoJSON für Bibliotheken implementieren müssen, die nur mit GeoJSON funktionieren.


3
Das ist richtig. Die Koordinatendaten in TopoJSON werden auch durch die Art der Verschiebungs- / Skalierungskonstanten und die Zustandsgenauigkeit jedes Koordinatenpaars etwas undurchsichtig, da sie alle relativ zu ihren vorhergehenden Punkten in der Linienfolge sind, was das Lesen erschwert.
Jason Scheirer

2
re: support - Es sieht so aus, als ob die Community beginnt, Topojson-Unterstützung hinzuzufügen, vermutlich aufgrund des Gewichts von Geojson über einer kleinen Pfeife. PostGIS2.1 (Release August 2013) unterstützt From_TopoJson, und das topojson-Team verfügt über einen Reader, der in D3 integriert ist. Die Unterstützung dieser beiden größeren Spieler ist meiner Meinung nach eine großartige Sache, um TopoJson am Laufen zu halten.
Jay Laura

1
Dies ist eine gute Erklärung für Toposjson. bost.ocks.org/mike/topology
neogeomat
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.