Mam plik KML z setkami punktów. Do każdego punktu znajdują się informacje, takie jak nazwa, moc, wiek (jest to mapa elektrowni wodnych). Jeśli zaimportuję ten plik KML do QGIS, informacje te zostaną utracone.
Czy istnieje sposób na zachowanie tych informacji?
Informacje wyglądają następująco:
<ExtendedData>
<SchemaData schemaUrl="#vorlage">
<SimpleData name="Name">Test</SimpleData>
<SimpleData name="Power">10895</SimpleData>
<SimpleData name="Location">L</SimpleData>
</SchemaData>
</ExtendedData>
Czy coś jest nie tak z moim kodem?
.kml
do QGIS? Ten format jest obsługiwany jako jeden z podstawowych formatów, więc dodaniekml
pliku jako warstwy powinno być względnie bezbolesne . Jeśli podasz więcej szczegółów, ktoś może pomóc ci dowiedzieć się, co się dzieje. Przydatne mogą być również informacje o źródle pliku.Odpowiedzi:
ExtendedData nie ma poprawnych wartości „name”.
Na przykład
nie jest importowany przez GDAL i Qgis Master, natomiast
zostanie zaimportowany.
Możesz to zmienić za pomocą dobrego edytora tekstu.
------------------- Dodane przez Miro ---------------------
Do edycji KML konieczne jest użycie edytora tekstu, który umożliwia „Wyrażenie regularne” w funkcji Zamień, takiej jak PSPad (lub Notepad ++ i wiele innych darmowych edytorów tekstu)
Odnaleźć:
<Data><displayName>(.*)</displayName>
Zastąpić:
<Data name="$1"><displayName>$1</displayName>
Następnie wystarczy użyć QGIS (kluczem jest „nowa” wersja - w tym GDAL wersja 1.9.2 i nowsze) i „Dodaj warstwę wektorową”, a warstwa załaduje się ze wszystkimi „ExtendedData”.
źródło
Przekształciłem jeden z mokradeł za pomocą Globalmappera w kształt: w załączeniu dwa zrzuty ekranu z przekonwertowanych plików dbf (obszary i linie):
mam nadzieję, że tego właśnie chcesz ..
źródło
Możesz użyć oprogramowania Global Mapper, w którym możesz łatwo eksportować / importować pliki kml / kmz + dołączać dane i wiele formatów wektorowych i rastrowych. To jedno z najlepszych programów ..
http://www.bluemarblegeo.com/global-mapper/product/formats.php
źródło
Wygląda na to, że libkml Google'a nie jest dostarczany z GDAL 1.9.2 na Ubuntu, a konkretnie gdal-bin 1.9.2-2 ~ precision4:
Aby uzyskać wersję działającą z libkml i
ExtendedData
obsługą, musiałem zbudować GDAL z pnia svn (r25473) po zbudowaniu libkml z pnia svn (r864), zwracając uwagę, że wersja 1.2.0 najwyraźniej nie jest wystarczająca, jak udokumentowano na stronie GDAL . Uwaga: instalacjalibkml0
na Ubuntu precyzyjnie (obecnie 1.2.0-1ubuntu6) nie pomoże. Naprawdę potrzebujesz pnia 1.3 lub svn, dla którego nie udało mi się znaleźć PPA.Ostatecznie nie byłem w stanie nawet zbudować libkml na Ubuntu. występują błędy typu w wersji boost, która jest z nim dostarczana, i są błędy podczas uruchamiania libtool, ponieważ zależności są nieczynne. Z jakiegoś powodu nie były to problemy na ściśnięciu Debiana, gdzie mi się udało:
Kiedy już to zacząłem, bieganie
ogr2ogr -f "ESRI Shapefile" foo.shp foo.kml
dał mi plik kształtu, który qgis mógł importować, zachowującExtendedData
atrybuty.źródło
Sterownik km2 Ogr2ogr używany przez Qgis 1.8.0 Lisboa nie obsługuje znaczników kmD ExtendedData.
Sterownik LIBKML działa, jest on włączony w GDAL od wersji 1.9.2, pakiety OSGEO4W, MS4W i Qgis Master.
Twoje dane nie są nieprawidłowe, ale sterownik LIBKML w OSGeo4W miał pewne problemy ze SchemaData. Alternatywnie, następujące prace:
EDYCJA: Błąd SchemaData został teraz naprawiony w pakiecie GGEAL 1.9.2-2 OSGEO4W.
źródło
Korzystanie z FME 2012 (SP4)
Załaduj KML Reader
Wybierz Writer (Shapefile)
połącz elementy i wybierz opcję zapisu ( skopiuj atrybuty z typów obiektów )
Uruchom obszar roboczy
źródło
Możesz spróbować kml2shp ?
Mają także nowy konwerter online .
źródło
Nie wiem, czy możesz to osiągnąć dzięki QGIS. MapWindow ma jednak wtyczkę KML2Shapefile .
MapWindow jest także darmowym pakietem GIS typu open source. Możesz pobrać i zainstalować za darmo. Możesz przekonwertować KML na plik kształtu za pomocą wtyczki KML2Shapefile w MapWindow i po prostu załadować wynikowy plik kształtu w QGIS. Zakładając, że i tak korzystasz z systemu Windows.
Najlepsze rozwiązanie, jakie mogę teraz wymyślić. Mam jednak nadzieję, że ktoś wie o wtyczce do zrobienia tego w QGIS.
źródło
Pobierz Global Mapper, wystarczy przynieść KMZ lub KML, a następnie wyeksportować Vector IMG (plik ESRI SHP). Globalny program mapujący może odczytać większość typów plików. Następnie otwórz kształt w ARC, Global mapper, Manifold, QGIS, ect i przejrzyj tabelę atrybutów. Wszystkie informacje będą tam. w tym momencie możesz również otworzyć plik DBF z SHP za pomocą Microsoft Excel, a następnie zapisać jako rozszerzenie pliku XLXS, jeśli chcesz.
źródło
W QGIS 3.2.0 konwersję można łatwo wykonać przy użyciu Zestawu narzędzi.
Wybierz w Przyborniku -> GDAL -> Konwersja wektorowa -> Konwertuj format .... (Caja de Herramientas de Procesos -> GDAL -> Conversión Vectorial -> Convertir Formato)
Wybierz plik KML, zapisz jako plik SHP. Musiałem także zmienić plik resulktingowy („Przekształcone”) we Właściwościach -> Źródło (Tab) -> Kodowanie źródłowe z „UTF-8” na „Windows-1258”, aby poprawnie zobaczyć hiszpańskie znaki.
źródło