Shapefiles in GeoJSON konvertieren?


19

Ich versuche, Shapefiles von der Senatsbezirks- Website des Staates Texas in eine GeoJSON-Datei für die Verwendung mit der Google Maps-API zu konvertieren . Ich benutze QGIS, um zu erleichtern, aber ich kann die Projektion / Koordinaten nicht richtig machen. Bisher habe ich Google Mercator (EPSG: 900913) und WGS 84 (EPSG: 4326) ohne Erfolg ausprobiert. Ich benutze die OpenLayers, um die Ergebnisse zu überprüfen, und es platziert Texas weiterhin in der Nähe des Golfs von Guinea (0 lat, 0 lng).

Antworten:


23

Es ist kein Problem, das herunterladbare Shapefile direkt in QGIS zu laden.

Die Daten sind in EPSG: 3081, belassen Sie es besser so. Die Google-API erwartet latlong-Werte, daher sollte das Ziel-CRS EPSG: 4326 sein.

Klicken Sie einfach mit der rechten Maustaste auf die Ebene -> Speichern unter ..., um den Dateityp GeoJSON, einen anderen Dateinamen und EPSG: 4326 als neues CRS auszuwählen. Sie können das Ergebnis zur Zeichenfläche hinzufügen, um zu sehen, ob sie ausgerichtet sind ( On-the-fly-reprojectionausgewählt).


Wie kann ich mit mehreren Ebenen "speichern unter"?
Chrismarx

Nein, jede Datei benötigt einen anderen Zieldateinamen. Sie können ogr2ogr in der Befehlszeile für die Stapelverarbeitung verwenden.
AndreJ

Es scheint, als könnte die Stapelverarbeitungsunterstützung, die sinnvolle Vorgaben für die automatische Benennung von Dateien unterstützt, verwendet werden, um die resultierenden Dateien einfach an einen Ordner zu senden
chrismarx

6

Hier ist das Konvertierungstool für Shapefile nach Geojson über einen Webbrowser ohne serverseitigen Code und mit Unterstützung für nicht-englische Codierung. Sie müssen nur die Zip-Datei hochladen und die Codierung für den richtigen Text festlegen.

https://github.com/gipong/shp2geojson.js

Wenn Sie diese Bibliothek mit Google Map api v3 verwenden, können Sie das EPSG-Codefeld überspringen, da das ZIP-Archiv (PlanS172.zip), das von der Website der Senatsbezirke im US-Bundesstaat Texas heruntergeladen wird, die PRJ-Datei enthält.

loadshp({
    url: '/shp/PlanS172.zip', // path or your upload file
    encoding: 'big5' // default utf-8
}, function(geojson) {
    // geojson returned
});

Bildbeschreibung hier eingeben


5

Über die Kommandozeile:

ogr2ogr -f GeoJSON -t_srs crs:84 output.geojson input.shp

Ich denke, das ist, was der Web-Client aus dieser Antwort verwendet.


Gerade getestet. Verhält sich deutlich besser als QGIS, wenn es um den RAM-Verbrauch geht!
Ikar Pohorský


-2

GeoJSON basiert auf der JavaScript-Objektnotation. Hier in diesem Beitrag können Sie verschiedene Methoden zum Konvertieren der Shapefiles online oder offline oder mithilfe der API, die Sie verwenden können, untersuchen. Schauen Sie sich diesen Beitrag an, um Shapefiles in GeoJSON- Dateien für die Verwendung in der Google Map zu konvertieren .

Verschiedene Möglichkeiten, Shapefile in GeoJSON zu konvertieren - Online oder Offline oder API


2
Links zu externen Ressourcen werden empfohlen. Fügen Sie jedoch bitte einen Kontext um den Link hinzu, damit Ihre Mitbenutzer eine Vorstellung davon haben, was es ist und warum es dort ist. Geben Sie immer den relevantesten Teil eines wichtigen Links an, falls die Zielsite nicht erreichbar ist oder dauerhaft offline geschaltet wird.
ArMoraer
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.