Ich habe eine KML-Datei mit Hunderten von Punkten. Zu jedem Punkt gibt es Informationen wie Name, Leistung, Alter (es ist eine Karte von Wasserkraftwerken). Wenn ich diese KML-Datei in QGIS importiere, gehen diese Informationen verloren.
Gibt es eine Möglichkeit, diese Informationen aufzubewahren?
Die Informationen sehen folgendermaßen aus:
<ExtendedData>
<SchemaData schemaUrl="#vorlage">
<SimpleData name="Name">Test</SimpleData>
<SimpleData name="Power">10895</SimpleData>
<SimpleData name="Location">L</SimpleData>
</SchemaData>
</ExtendedData>
Stimmt etwas mit meinem Code nicht?
.kml
in QGIS? Dieses Format wird als eines der Grundformate unterstützt, sodass das Hinzufügen einerkml
Datei als Ebene relativ einfach sein sollte . Wenn Sie weitere Details angeben, kann möglicherweise jemand helfen, den Fehler zu ermitteln. Auch Informationen zur Quelle der Datei können hilfreich sein.Antworten:
Die ExtendedData hat keine korrekten "Name" -Werte.
Beispielsweise
wird von GDAL und Qgis Master nicht importiert, während
wird importiert.
Das können Sie mit einem guten Texteditor ändern.
------------------- Hinzugefügt von Miro ---------------------
Für die KML-Bearbeitung wird ein Texteditor benötigt, der "Reguläre Ausdrücke" in Ersetzungsfunktionen wie PSPad (oder Notepad ++ und vielen anderen freien Texteditoren) ermöglicht.
Finden:
<Data><displayName>(.*)</displayName>
Ersetzen:
<Data name="$1"><displayName>$1</displayName>
Verwenden Sie danach einfach QGIS (der Schlüssel ist "neue" Version - enthalten ab GDAL Version 1.9.2) und "Vektorebene hinzufügen" und die Ebene wird mit allen "ExtendedData" geladen.
quelle
Ich habe eine der Wetlandfiles mit Globalmapper in Shape konvertiert: Anbei zwei Screenshots von konvertierten DBF-Dateien (Flächen und Linien):
hoffentlich ist das was du willst ..
quelle
Sie können die Global Mapper-Software verwenden, mit der Sie problemlos kml / kmz-Dateien exportieren / importieren und Daten sowie viele Vektor- und Rasterformate anhängen können. Sie ist eine der besten Software.
http://www.bluemarblegeo.com/global-mapper/product/formats.php
quelle
Es scheint, dass Googles libkml unter Ubuntu nicht mit GDAL 1.9.2 ausgeliefert wird, insbesondere mit gdal-bin 1.9.2-2 ~ exact4:
Um eine Version zu bekommen, die mit libkml und
ExtendedData
Support funktioniert , musste ich GDAL aus svn trunk (r25473) erstellen, nachdem ich libkml aus svn trunk (r864) erstellt hatte, wobei ich feststellte, dass die Version 1.2.0 anscheinend nicht ausreicht, wie auf der GDAL-Website dokumentiert .libkml0
Beachten Sie, dass die Installation unter Ubuntu Precise (derzeit 1.2.0-1ubuntu6) nicht hilft. Du brauchst wirklich 1.3 oder svn trunk, für die ich kein PPA finden konnte.Ich war letztendlich nicht in der Lage, libkml auf Ubuntu präzise zu erstellen. Die mitgelieferte Boost-Version enthält Tippfehler, und es gibt Fehler beim Ausführen von libtool, da die Abhängigkeiten nicht in Ordnung sind. Aus irgendeinem Grund war dies kein Problem bei Debian Squeeze, wo es mir gelungen ist:
Sobald ich damit
ogr2ogr -f "ESRI Shapefile" foo.shp foo.kml
fertig war , gab mir das Laufen ein Shapefile, das QGIS importieren konnte, wobei dieExtendedData
Attribute erhalten blieben .quelle
Der von Qgis 1.8.0 Lisboa verwendete Ogr2ogr kml-Treiber unterstützt keine kml ExtendedData-Tags.
Der LIBKML-Treiber ist in GDAL ab Version 1.9.2, OSGEO4W-Paketen, MS4W und Qgis Master enthalten.
Ihre Daten sind nicht falsch, aber der LIBKML-Treiber in OSGeo4W hatte einige Probleme mit SchemaData. Alternativ funktioniert folgendes:
BEARBEITEN: Der SchemaData-Fehler wurde im GDAL 1.9.2-2-Paket von OSGEO4W behoben.
quelle
Verwenden von FME 2012 (SP4)
Laden Sie den Reader KML
Wählen Sie einen Writer (Shapefile)
Verbinden Sie die Elemente und wählen Sie sie beim Schreiben aus ( Kopieren von Attributen aus Feature-Typen ).
Führen Sie den Arbeitsbereich aus
quelle
Sie könnten kml2shp versuchen ?
Sie haben auch einen neuen Online-Konverter .
quelle
Ich weiß nicht, dass Sie das mit QGIS erreichen können. MapWindow hat jedoch ein KML2Shapefile- Plugin.
MapWindow ist übrigens auch ein kostenloses Open-Source-GIS-Paket. Sie können es kostenlos herunterladen und installieren. Sie können die KML-Datei mit dem KML2Shapefile-Plugin in MapWindow in eine Shapefile-Datei konvertieren und die resultierende Shapefile-Datei einfach in QGIS laden. Vorausgesetzt, Sie arbeiten sowieso unter Windows.
Die beste Lösung, die mir derzeit einfällt. Ich hoffe, jemand kennt ein Plugin, um es in QGIS zu tun.
quelle
Holen Sie sich Global Mapper. Alles, was Sie tun müssen, ist KMZ oder KML zu importieren und anschließend Vector IMG (ESRI SHP File) zu exportieren. Global Mapper kann die meisten Dateitypen lesen. Öffnen Sie dann die Form in ARC, Global Mapper, Manifold, QGIS, ect und zeigen Sie die Attributtabelle an. Alle Infos werden da sein. Sie können an dieser Stelle auch die DBF-Datei aus dem SHP mit Microsoft Excel öffnen und dann bei Bedarf als XLXS-Dateierweiterung speichern.
quelle
In QGIS 3.2.0 kann die Konvertierung einfach über die Toolbox vorgenommen werden.
Wählen Sie in der Toolbox -> GDAL -> Vektorkonvertierung -> Format konvertieren ....
KML-Datei auswählen, als SHP-Datei speichern. Ich musste auch die Resulkting-Datei ("Converted") in den Eigenschaften -> Source (Tab) -> Source Coding von "UTF-8" auf "Windows-1258" ändern, um die spanischen Zeichen richtig zu sehen.
quelle