Tutorial: Introductie GDAL

9. Converteer CSV-bestanden

Soms wil je coördinaten in een ASCII‑bestand herprojecteren, bijvoorbeeld wanneer ze als tekst zijn opgeslagen vanuit een spreadsheetprogramma. Hier gaan we de coördinaten in het kommagescheiden ASCII‑bestand locations.csv omzetten naar een GeoPackage‑puntlaag met hergeprojecteerde coördinaten.

Het is goede gewoonte om eerst de inhoud van een CSV‑bestand te bekijken en te controleren (1) de coördinaten, en (2) het kolomscheidingsteken.

De scheiding is niet altijd een komma en hangt soms af van de taalinstellingen die zijn gebruikt bij het exporteren vanuit een spreadsheetprogramma.

1. Bekijk de inhoud van locations.csv . Je kunt hiervoor het type-commando gebruiken in de opdrachtprompt, zoals je hebt geleerd in de Command Line‑tutorial.

We zien dat de coördinaten in lat/lon staan, wat betekent dat we EPSG:4326 kunnen gebruiken. Het kolomscheidingsteken is een komma. De laatste kolom bevat objecten met een string tussen aanhalingstekens.
 
Om de projectie van het CSV‑bestand te wijzigen, moeten we eerst een virtuele databron maken door een XML‑controlbestand aan te maken.
 
2. Open op je Windows‑computer Kladblok en typ/kopieer de onderstaande XML‑code. Gebruik inspringingen van drie spaties.

<OGRVRTDataSource>
   <OGRVRTLayer name="locations">
      <SrcDataSource>locations.csv</SrcDataSource>
      <GeometryType>wkbPoint</GeometryType>
      <LayerSRS>EPSG:4326</LayerSRS>
      <GeometryField encoding="PointFromColumns" x="lon" y="lat"/>
   </OGRVRTLayer>
</OGRVRTDataSource>
 

3. Sla het bestand op als locations.vrt in dezelfde map als locations.csv.

Uitleg over het XML‑bestand:

  • <OGRVRTLayer name="locations"> moet overeenkomen met <SrcDataSource>locations.csv</SrcDataSource>
  • <LayerSRS>EPSG:4326</LayerSRS> moet overeenkomen met de EPSG‑code van de coördinatenkolommen.
  • <GeometryField encoding="PointFromColumns" x="lon" y="lat"/> geeft aan welke kolommen de coördinaten bevatten die je wilt converteren.
4. Voer het volgende commando uit:
gdal vector reproject -d EPSG:28992 locations.vrt data.gpkg --update --output-layer locations_reprojected
 
5. Controleer het resultaat met gdal info.
 
6. Visualiseer de punten in QGIS door de locaties te plotten over de DEM, de wegenkaart en de gemeentegrens van Delft. Maak er een mooie kaart van.

7. Converteer het locations‑bestand naar Google KML, open het in Google Earth en zoek uit wat de objectlocaties zijn.