Toon posts:

GIS, Shapefiles en Gribfiles van het knmi

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Gegroet iedereen,

Ik ben bezig met het ontwikkelen van een applicatie waarbij het een en ander aan voorwerk moet worden verricht. De aard van de applicatie is voor deze vraag van ondergeschikt belang, het belangrijke is om te weten dat ik wat gegevens nodig heb die ik op zijn tijd in een database kan plempen.

Ik heb een GRIB file van het KNMI (https://data.knmi.nl/datasets/harmonie_p1/0.2?q=harmonie) met daar in weergegevens. Ook heb ik een shape-file (SHP) met daarin enkele gebieden met bijhorende data.

Deze shapefile leg ik met een GIS systeem (QGIS) over de GRIB file. Wat ik nu echter wil weten is het volgende:
  • In welke vakjes uit de GRIB file ligt welk gebied uit de shapefile?
  • Voor hoeveel procent van een vakje ligt een gebied dan in dat specifieke vakje?
Het eerste vraagstuk lukt aardig. Na enkele stappen krijg ik realistisch ogende resultaten.

Het tweede vraagstuk blijkt echter lastiger. Mijn idee is om het aantal pixels van zo'n GRIB-vakje vast te stellen, om vervolgens te kijken voor hoeveel pixels een gebied van de shapefile in dat vakje ligt. Het lukt me echter niet.

Wat heb ik al gedaan?
  • Zorgen dat beide files hetzelfde CRS (coordinatenstelsel) hanteren
  • Extra veld toevoegen aan de shapefile met waarde 1 om de gebieden te identificeren als gebied
  • [/i]De shapefile naar een raster converteren[/li]
  • Beide bestanden weer naar een polygoon converteren file naar een polygoon converteren
Hoe moet ik verder?
Ik denk zelf dat we nu de intersection moeten bepalen tussen de 2 files, waarvoor het programma (QGIS) ook een optie heeft. Ook zullen de bestanden wellicht gejoind moeten worden. Ik heb al verschillende dingen geprobeerd, echter werkten geen van allen. Ik heb het gevoel dat ik wat mis of wat verkeerd doe in mijn proces.

Bijzonder om te weten
De bestanden die door het KNMI worden verstrekt beweren GRIB (GRIB1 om precies te zijn) bestanden te zijn, echter ondersteunen de meeste programma's de bestanden van het KNMI niet. Andere GRIB1 bestanden worden wel geaccepteerd. Ik heb via het zeilersforum een python script gevonden die het naar een reguliere GRIB1 kan converteren (https://zeilersforum.nl/i...s-nu-beschikbaar?start=25) en ik heb ook een site gevonden die deze bestanden geconverteerd en al aanbied (http://www.euroszeilen.utwente.nl/weer/grib/). Deze bestanden worden wel ingeladen.

Ook treed er een complicatie op wanneer we de (geconverteerde) GRIB file inladen en vertalen naar een polygoon. Wat je zou verwachten is een raster met gelijke vakjes. Wat we krijgen is een raster met grotendeels gelijke vakjes, maar ook met vakjes die lijken op 3 vakjes horizontaal aan elkaar (welke dus ook 1 ID hebben). Of zelfs hele clusters aan elkaar zittende vakjes met 1 ID. Zie het screenshot.

BOTTOM LINE
Kan iemand mij een duwtje in de goede richting geven? Ik ben een leek op het gebied van GIS. Van nature ben ik een software engineer. Ik ben niet gebonden tot QGIS, andere oplossingen of tips zijn ook welkom. Als het met een andere tool kan, of met een simpel scriptje (ik prefereer .NET) ben ik helemaal happy.

In ieder geval, bedankt voor het lezen, en wellicht bedankt voor de suggesties!

Groetjes,

groeien

Acties:
  • 0 Henk 'm!

  • ajakkes
  • Registratie: Maart 2004
  • Laatst online: 16-05 22:32

ajakkes

👑

Ik ken het GRIP formaat niet, maar kan je deze ook opslaan als SHP? Mogelijk na converteren naar polygoon?

Hierna kan je met Qgis wel iets doen met intersect, differents, clip om tot een resultaat te komen.

👑


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Bedankt voor de suggestie! Echter heb ik dit al geprobeerd, de conversie van de GRIB naar SHP gaat prima, alleen kom ik daarna niet echt verder helaas.

Acties:
  • 0 Henk 'm!

  • ajakkes
  • Registratie: Maart 2004
  • Laatst online: 16-05 22:32

ajakkes

👑

Ik heb je mijn email adres gestuurd. Dan kan ik kijken hoe de bestanden er nu uit zien en waar je naar toe wil.

👑


Acties:
  • +1 Henk 'm!

  • ajakkes
  • Registratie: Maart 2004
  • Laatst online: 16-05 22:32

ajakkes

👑

Wat je ziet is de luchtdruk in het gebied. Als deze voor een aantal vakjes hetzelfde is wordt dit door je conversie naar 1 vak geconverteerd (als het in het bronbestand al niet 1 vakje is).

Het zijn vakjes van 2.5 bij 2.5km.

Ik vermoedt dat het bronbestand van het KNMI het CRS EPSG:28992 gebruikt. Het lijkt me daarom verstandig om alles in dit formaat te houden in plaats van een user defined CRS te gebruiken.

EDIT: Zo te zien is het coordinatenstelsel van de bron WGS:84. Dit is te zien doordat de coordinaten redelijk netjes afronden in graden. En het gebied in Rijksdriehoek smaller wordt aan de bovenzijde. Wel zijn de vakjes ongeveer 2.5 bij 2.5 km. (Niet exact omdat de aarde rond is)

Om te bepalen in hoeveel vakjes jouw polygoon ligt heb je het bestand van het KNMI niet eens echt nodig. Slechts de breedte en de hoogte van je polygoon. Ik denk dus niet dat dit je bedoeling is.

Wat ik vermoedt is dat je op zoek bent naar de 'gemiddelde waarde' of 'de waarde bij het centrum van jouw polygoon' per polygoon? Om te beginnen zou ik jouw polygonen ook met rijksdriehoek coordinaten opslaan. Dit is gebruikelijk voor data in Nederland. Tenzij je bron GPS is. Dan kan je WGS:84 gebruiken.

Je kan bijvoorbeeld met 'koppel attributen op basis van plaats' de luchtdruk van je raster koppelen aan je polygoon.

[ Voor 11% gewijzigd door ajakkes op 12-04-2017 15:52 ]

👑


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hartelijk dank voor je uitgebreide antwoord! De berekening, om te bepalen in hoeveel vakjes het polygoon ligt, is momenteel wel al gelukt.

Wat betreft de verschillende raster vakjes: Ik begrijp nu waardoor ze niet allemaal dezelfde grootte hebben, maar is dit op de een of andere manier toch te realiseren? Dit is namelijk nodig, zodat ik een juiste mapping kan maken van het polygoon ten opzichte van de KNMI kaart.

EDIT:

Ik heb het voor elkaar gespeeld! Aan de hand van jouw uitleg heb ik beredeneerd dat de waarde van band 1 uniek moet zijn. Band 1 is inderdaad de luchtdruk. Ik heb een nieuw raster berekend met daarin unieke waardes. Hier ben ik mee verder gegaan. Ik krijg nu een mooi gepolygoniseerd raster met gelijke vakjes. Hierop heb ik mijn berekening voor het percentage gedaan.

Heel erg bedankt voor je uitleg en tips! Mijn dank grenst aan hondsdolheid :)

Dit topic mag worden gesloten!

[ Voor 37% gewijzigd door Verwijderd op 14-04-2017 16:22 ]

Pagina: 1