Vraag:
Splits een groot KML-bestand op land
Nicolas Raoul
2015-03-20 15:29:47 UTC
view on stackexchange narkive permalink

Ik heb een KML-bestand met 5.000.000 plaatsen over de hele wereld.

Door het grote aantal plaatsen is het lastig om het in Google Earth te gebruiken, dus ik wil het opsplitsen, één klein bestand per land .

Bonus als kleine landen bij elkaar zijn gegroepeerd en grote landen zoals de VS opgesplitst in staten.

Vereisten:

  • Neemt een KML-bestand
  • Splitst het op in gebieden, ik hoef zelf geen landdefinities in te stellen
  • Produceert KML-bestanden met een voorvoegsel + gebiedsnaam, bijvoorbeeld mydata_Algeria.kml
  • Gratis
  • Webapps OK, bezoekers kunnen het gebied kiezen dat ze willen en alleen die gegevens downloaden.

Als het opsplitsen naar landen te moeilijk is, splitsen op breedtegraden / lengtegraden is ook OK.

Een antwoord:
LaughU
2017-09-05 14:02:54 UTC
view on stackexchange narkive permalink

De gemakkelijkste manier om dit te bereiken is door een geografisch informatiesysteem (GIS) te gebruiken. Een gratis oplossing is QGIS in de huidige versie 2.18 (versie 3.0 komt half oktober / november uit)

U zou echter nog steeds wat programmering moeten gebruiken als u dat wilt je doel bereiken. Daarnaast heeft u basiskennis van GIS nodig.

Een mogelijke workflow zonder programmeren zou zijn:

  • Laad je KML-bestand en een shapefile van de wereldlanden
  • (optioneel): Over de wereld landenbestand, maak een veld aan dat een groeperingswaarde bevat
  • Selecteer een land met de tool Selecteren of met een uitdrukking zoals "my_field" = 'grouping value' let op de enkele en dubbele aanhalingstekens (dubbele aanduiding van een veldnaam, terwijl enkel een tekenreeks / tekst is)
  • Gebruik een tool 'Selecteer op locatie' onder Vector -> Onderzoekstools
  • Klik met de rechtermuisknop op uw * .kml-bestand en kies "opslaan als .."
  • In het nieuwe venster kunt u het bestandsformaat kiezen en de optie "alleen geselecteerde objecten opslaan" aanvinken.
  • Geef de bestand volgens uw normen.

Een andere manier zou zijn om de grafische modeler van QGIS of de integratie van python met pygis

te gebruiken
Moet ik de laatste 5 stappen voor elk land ter wereld uitvoeren? Een oplossing die alle landen tegelijk doet, zou de beste zijn, vooral als deze vanaf de opdrachtregel kan worden aangeroepen. Bedankt!
@NicolasRaoul Er is zeker een manier om dit proces te automatiseren, maar ik zou wat tijd nodig hebben om het te testen. Als QGIS is geïnstalleerd, hebt u ook de osgeo-shell geïnstalleerd die wordt geleverd met ogr2ogr.
zou iemand me dit kunnen uitleggen alsof ik een 8e grader was, want zelfs stap 1 load kml en "shapefile of the world" gaan mij te boven. Ik zou weten waar ik het genoemde shapefile zou kunnen krijgen of hoe ik het moest installeren als ik het had. Het lijkt ook mijn Google-locatiegeschiedenis KML te verwerpen en zegt dat het geen gegevens heeft. Hoewel ik het waarschijnlijk gewoon verkeerd doe.


Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 3.0-licentie waaronder het wordt gedistribueerd.
Loading...