27.1.5. Interpolatie

27.1.5.1. Heatmap (Schatting dichtheid kernel KDE)

Maakt een dichtheidsraster (heatmap) op basis van een invoer puntenlaag met schatting van de dichtheid van de kernel.

De dichtheid wordt berekend op basis van het aantal punten op een locatie, grotere aantallen punten zullen resulteren in grotere waarden. Heatmap helpt bij het identificeren van “Hotspots” en plekken met een grote dichtheid van punten.

Parameters

Label

Naam

Type

Beschrijving

Puntenlaag

INPUT

[vector: punt]

Punten vectorlaag om te gebruiken voor de heatmap

Straal

RADIUS

[getal]

Standaard: 100.0

De straal om te zoeken (of kernel bandbreedte) in kaarteenheden. De straal geeft de afstand rondom een punt weer waar dat punt nog invloed heeft. Grotere waarden resulteren in grotere afvlakking, kleinere waarden geven meer details en variatie in dichtheid van punten.

Grootte uitvoerraster

PIXEL_SIZE

[getal]

Standaard: 0.1

Pixelgrootte in uitvoer rasterlaag in laageenheden.

In de GUI mag de grootte worden gespecificeerd door het aantal rijen (Aantal rijen) / kolommen (Aantal kolommen) of de pixelgrootte (Pixelgrootte X / Pixelgrootte Y). Verhogen van het aantal rijen of kolommen zullen de celgrootte verminderen en de bestandsgrootte van het uitvoerraster verhogen. De waarden in Rijen, Kolommen, Pixelgrootte X en Pixelgrootte Y zullen tegelijk worden bijgewerkt - verdubbelen van het aantal rijen zal automatisch ook het aantal kolommen verdubbelen, de celgrootte zal worden gehalveerd. Het bereik van het uitvoerraster zal hetzelfde blijven (bij benadering).

Radius uit veld

Optioneel

RADIUS_FIELD

[tabelveld: numeriek]

Stelt de straal in voor elk object vanuit een attribuutveld in de invoerlaag.

Gewicht uit veld

Optioneel

WEIGHT_FIELD

[tabelveld: numeriek]

Geeft de mogelijkheid om voor objecten een attribuutveld als gewogen veld te geven. Dit kan worden gebruikt om bepaalde objecten meer invloed te geven op de resulterende heatmap.

Kernel vorm

KERNEL

[enumeratie]

Standaard: 0

Beheert de mate waarin de invloed van een punt afneemt als de afstand tot het punt toeneemt. Verschillende kernel vormen vervallen met verschillende mate, een triweight kernel geeft objecten een groter gewicht voor afstanden dichter bij het punt dan de Epanechnikov kernel doet. Als gevolg hiervan resulteert een triweight kernel in “scherpere” hotspots en resulteert Epanechnikov in meer ”vlakkere” hotspots.

Er zijn vele vormen beschikbaar (bekijk de pagina van Wikipedia voor meer informatie):

  • 0 — Vierdegraads

  • 1 — Driehoekig

  • 2 — Uniform

  • 3 — Triweight

  • 4 — Epanechnikov

Ratio verval (Alleen triangulaire kernels)

Optioneel

DECAY

[getal]

Standaard: 0.0

Kan worden gebruikt bij driehoekige kernels om meer controle te krijgen over in welke mate de hitte afneemt met de afstand tot het object.

  • Waarde 0 (= minimum) geeft aan dat de hitte geconcentreerd zijn in het centrum van de opgegeven straal en volledig gedoofd zal zijn aan de rand.

  • Een waarde van 0,5 geeft aan dat pixels aan de rand van de straal de helft van de hitte uitstralen van de pixels in het centrum van de straal om te zoeken.

  • Een waarde van 1 betekent dat de hitte gelijkmatig is verdeeld over de gehele cirkel van de straal. (Dit is gelijk aan de kernel ‘Uniform’)

  • Een waarde groter dan 1 geeft aan dat de hitte aan de randen van de straal groter is dan in het centrum.

Op schaal brengen uitvoerwaarde

OUTPUT_VALUE

[enumeratie]

Default: Ruw

Maakt het mogelijk de waarden voor het uitvoerraster voor de heatmap te wijzigen. Één van:

  • 0 — Ruw

  • 1 — Geschaald

Heatmap

OUTPUT

[raster]

Standaard: [Opslaan naar tijdelijk bestand]

Specificeer de rasterlaag met waarden voor dichtheid van de kernel. Één van:

  • Opslaan naar tijdelijk bestand

  • Opslaan als bestand…

Uitvoer

Label

Naam

Type

Beschrijving

Heatmap

OUTPUT

[raster]

Rasterlaag met waarden voor dichtheid van de kernel

Voorbeeld: Maken van een Heatmap

Voor het volgende voorbeeld zullen we de punten vectorlaag airports van de voorbeeld gegevensset van QGIS (zie Voorbeeldgegevens downloaden) gebruiken. Een andere goede handleiding voor QGIS voor het maken van heatmaps kan gevonden worden op http://qgistutorials.com.

In Fig. 27.2 worden de vliegvelden van Alaska weergegeven.

../../../../_images/heatmap_start.png

Fig. 27.2 Vliegvelden van Alaska

  1. Open het algoritme Heatmap (Schatting dichtheid kernel KDE) uit de groep Interpolatie van QGIS

  2. Selecteer, voor het veld Puntenlaag selectString, airports uit de lijst van geladen puntlagen in het huidige project.

  3. Wijzig het veld Straal naar 1000000 meters.

  4. Wijzig de Grootte pixel X naar 1000. De Grootte pixel Y, Rijen en Kolommen worden automatisch bijgewerkt.

  5. Klik op Uitvoeren om de heatmap voor vliegvelden te maken en te laden (zie Fig. 27.4).

../../../../_images/heatmap_dialog.png

Fig. 27.3 Het dialoogvenster Heatmap

QGIS zal de heatmap maken en die toevoegen aan uw kaartvenster. Standaard is de heatmap opgemaakt in grijswaarden, met lichtere gebieden die hogere concentraties vliegvelden weergeven. De heatmap kan nu in QGIS worden opgemaakt om het uiterlijk te verbeteren.

../../../../_images/heatmap_loaded_grey.png

Fig. 27.4 De heatmap ziet er na het laden uit als een grijs vlak

  1. Open het dialoogvenster Eigenschappen voor de laag heatmap_airports (selecteer de laag heatmap_airports, druk op de rechtermuisknop en selecteer in het menu Eigenschappen).

  2. Selecteer de tab Symbologie.

  3. Wijzig het Rendertype selectString naar ‘Enkelbands pseudokleur’.

  4. Selecteer een geschikt Kleurverloop selectString, bijvoorbeeld YlOrRd.

  5. Klik op de knop Classificeren.

  6. Druk op OK om de laag bij te werken.

Het uiteindelijke resultaat wordt getoond in Fig. 27.5.

../../../../_images/heatmap_loaded_colour.png

Fig. 27.5 Opgemaakte Heatmap van vliegvelden van Alaska

Pythoncode

ID algoritme: qgis:heatmapkerneldensityestimation

import processing
processing.run("algorithm_id", {parameter_dictionary})

Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmes gebruiken vanaf de console voor details over hoe algoritmes van Processing uit te voeren vanuit de console voor Python.

27.1.5.2. IDW-interpolatie

Maakt een Inverse Distance Weighted (IDW) interpolatie van een punten vectorlaag.

Monsterpunten worden gewogen gedurende het interpoleren zodat de invloed van één punt relatief ten opzichte van een ander vermindert met de afstand vanaf het onbekende punt dat u wilt maken.

De methode IDW-interpolatie heeft ook enkele nadelen: de kwaliteit van het resultaat van de interpolatie kan minder worden als de verdeling van de monsterpunten van gegevens oneven is.

Verder zouden maximum en minimum waarden in het geïnterpoleerde oppervlak alleen voor kunnen komen op monsterpunten van de gegevens.

Parameters

Label

Naam

Type

Beschrijving

Invoerla(a)g(en)

INTERPOLATION_DATA

[tekenreeks]

Vectorlaag(-lagen) en veld(en) om te gebruiken voor de interpolatie, gecodeerd in een tekenreeks (bekijk de klasse ParameterInterpolationData in InterpolationWidgets voor meer details).

De volgende elementen van de GUI worden verschaft om de tekenreeks met gegevens voor de interpolatie samen te stellen:

  • Vectorlaag [vector: elke]

  • Interpolatie attribuut [tabelveld: numeriek]: Attribuut om te gebruiken in de interpolatie

  • Z-coördinaat gebruiken voor interpolatie [Booleaanse waarde]: Gebruikt de in de laag opgeslagen Z-waarden (Standaard: False)

Voor elk van de toegevoegde combinaties laag-veld kan een type worden gekozen:

  • Punten

  • Gestructureerde lijnen

  • Afgebroken lijnen

In de tekenreeks worden de elementen laag-veld gescheiden door '::|::'. De sub-elementen van de elementen laag-veld worden gescheiden door '::~::'.

Afstandscoëfficiënt P

DISTANCE_COEFFICIENT

[getal]

Standaard: 2.0

Stelt de afstandscoëfficiënt in voor de interpolatie. Minimum: 0.0, maximum: 100.0.

Bereik (xmin, xmax, ymin, ymax)

EXTENT

[bereik]

Bereik van de uitvoer rasterlaag.

Beschikbare methoden zijn:

  • Uit laag berekenen…: gebruikt het bereik van een laag die in het huidige project is geladen

  • Berekenen uit kaart afdruklay-out…: gebruikt het bereik van een afdruklay-out kaart-item in het actieve project

  • Berekenen uit Favoriete plaats…: gebruikt het bereik van een opgeslagen Favoriete plaats

  • Huidige bereik van kaartvenster gebruiken

  • Tekenen in kaartvenster: klik en sleep een rechthoek die het gebied beperkt tot dat waarmee rekening moet worden gehouden

  • Voer de coördinaten in als xmin, xmax, ymin, ymax

Grootte uitvoerraster

PIXEL_SIZE

[getal]

Standaard: 0.1

Pixelgrootte in uitvoer rasterlaag in laageenheden.

In de GUI mag de grootte worden gespecificeerd door het aantal rijen (Aantal rijen) / kolommen (Aantal kolommen) of de pixelgrootte (Pixelgrootte X / Pixelgrootte Y). Verhogen van het aantal rijen of kolommen zullen de celgrootte verminderen en de bestandsgrootte van het uitvoerraster verhogen. De waarden in Rijen, Kolommen, Pixelgrootte X en Pixelgrootte Y zullen tegelijk worden bijgewerkt - verdubbelen van het aantal rijen zal automatisch ook het aantal kolommen verdubbelen, de celgrootte zal worden gehalveerd. Het bereik van het uitvoerraster zal hetzelfde blijven (bij benadering).

Geïnterpoleerd

OUTPUT

[raster]

Standaard: [Opslaan naar tijdelijk bestand]

Rasterlaag met geïnterpoleerde waarden. Één van:

  • Opslaan naar tijdelijk bestand

  • Opslaan als bestand…

Uitvoer

Label

Naam

Type

Beschrijving

Geïnterpoleerd

OUTPUT

[raster]

Rasterlaag met geïnterpoleerde waarden

Pythoncode

ID algoritme: qgis:idwinterpolation

import processing
processing.run("algorithm_id", {parameter_dictionary})

Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmes gebruiken vanaf de console voor details over hoe algoritmes van Processing uit te voeren vanuit de console voor Python.

27.1.5.3. Lijndichtheid

Berekent voor elke rastercel de dichtheid van lineaire objecten in een circulaire omgeving. Deze meting wordt verkregen door alle lijnsegmenten die kruisen met de circulaire omgeving bij elkaar op te tellen en de som daarvan te delen door het gebied van een dergelijke omgeving. Een weegfactor kan worden toegepast op de lijnsegmenten.

../../../../_images/linedensity.png

Fig. 27.6 Voorbeeld lijndichtheid. Bron invoerlaag: Wegen Overijssel - Nederland (OSM).

Parameters

Label

Naam

Type

Beschrijving

Invoer lijnlaag

INPUT

[vector: elke]

Invoer vectorlaag die de lijnobjecten bevat

Veld Gewicht

WEIGHT

[getal]

Veld van de laag die de weegfactor bevat om bij de berekening te gebruiken

Zoekradius

RADIUS

[getal]

Standaard: 10

Straal van de circulaire omgeving. Eenheden kunnen hier worden gespecificeerd.

Pixelgrootte

PIXEL_SIZE

[getal]

Standaard: 10

Pixelgrootte voor uitvoer rasterlaag in laageenheden. Het raster heeft vierkante pixels.

Raster dichtheid lijn

OUTPUT

[raster]

Standaard: [Opslaan naar tijdelijk bestand]

De uitvoer als een rasterlaag. Één van:

  • Opslaan naar tijdelijk bestand

  • Opslaan als bestand…

Uitvoer

Label

Naam

Type

Beschrijving

Raster dichtheid lijn

OUTPUT

[raster]

De uitvoer rasterlaag voor lijndichtheid

Pythoncode

ID algoritme: native:linedensity

import processing
processing.run("algorithm_id", {parameter_dictionary})

Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmes gebruiken vanaf de console voor details over hoe algoritmes van Processing uit te voeren vanuit de console voor Python.

27.1.5.4. TIN-interpolatie

Maakt een Triangulated Irregular Network (TIN) interpolatie van een punten vectorlaag.

Met de methode TIN kunt u een oppervlak maken dat wordt gevormd door driehoeken van dichtstbij gelegen punten. Omgeschreven cirkels worden rondom geselecteerde monsterpunten gemaakt om dit te doen en hun kruisingen worden verbonden met een netwerk van niet-overlappende en zo compact mogelijke driehoeken. De resulterende oppervlakten zijn niet afgevlakt.

Het algoritme maakt zowel de rasterlaag met de geïnterpoleerde waarden als de vector lijnenlaag met de grenzen van de driehoeken.

Parameters

Label

Naam

Type

Beschrijving

Invoerla(a)g(en)

INTERPOLATION_DATA

[tekenreeks]

Vectorlaag(-lagen) en veld(en) om te gebruiken voor de interpolatie, gecodeerd in een tekenreeks (bekijk de klasse ParameterInterpolationData in InterpolationWidgets voor meer details).

De volgende elementen van de GUI worden verschaft om de tekenreeks met gegevens voor de interpolatie samen te stellen:

  • Vectorlaag [vector: elke]

  • Interpolatie attribuut [tabelveld: numeriek]: Attribuut om te gebruiken in de interpolatie

  • Z-coördinaat gebruiken voor interpolatie [Booleaanse waarde]: Gebruikt de in de laag opgeslagen Z-waarden (Standaard: False)

Voor elk van de toegevoegde combinaties laag-veld kan een type worden gekozen:

  • Punten

  • Gestructureerde lijnen

  • Afgebroken lijnen

In de tekenreeks worden de elementen laag-veld gescheiden door '::|::'. De sub-elementen van de elementen laag-veld worden gescheiden door '::~::'.

Interpolatie methode

METHOD

[enumeratie]

Standaard: 0

De te gebruiken methode voor interpolatie instellen. Één van:

  • Lineair

  • Clough-Toucher (kubisch)

Bereik (xmin, xmax, ymin, ymax)

EXTENT

[bereik]

Bereik van de uitvoer rasterlaag.

Beschikbare methoden zijn:

  • Uit laag berekenen…: gebruikt het bereik van een laag die in het huidige project is geladen

  • Berekenen uit kaart afdruklay-out…: gebruikt het bereik van een afdruklay-out kaart-item in het actieve project

  • Berekenen uit Favoriete plaats…: gebruikt het bereik van een opgeslagen Favoriete plaats

  • Huidige bereik van kaartvenster gebruiken

  • Tekenen in kaartvenster: klik en sleep een rechthoek die het gebied beperkt tot dat waarmee rekening moet worden gehouden

  • Voer de coördinaten in als xmin, xmax, ymin, ymax

Grootte uitvoerraster

PIXEL_SIZE

[getal]

Standaard: 0.1

Pixelgrootte in uitvoer rasterlaag in laageenheden.

In de GUI mag de grootte worden gespecificeerd door het aantal rijen (Aantal rijen) / kolommen (Aantal kolommen) of de pixelgrootte (Pixelgrootte X / Pixelgrootte Y). Verhogen van het aantal rijen of kolommen zullen de celgrootte verminderen en de bestandsgrootte van het uitvoerraster verhogen. De waarden in Rijen, Kolommen, Pixelgrootte X en Pixelgrootte Y zullen tegelijk worden bijgewerkt - verdubbelen van het aantal rijen zal automatisch ook het aantal kolommen verdubbelen, de celgrootte zal worden gehalveerd. Het bereik van het uitvoerraster zal hetzelfde blijven (bij benadering).

Geïnterpoleerd

OUTPUT

[raster]

Standaard: [Opslaan naar tijdelijk bestand]

De uitvoer TIN-interpolatie als een rasterlaag. Één van:

  • Opslaan naar tijdelijk bestand

  • Opslaan als bestand…

Triangulatie

TRIANGULATION

[vector: lijn]

Standaard: [Uitvoer overslaan]

De uitvoer TIN als een vectorlaag. Één van:

  • Uitvoer overslaan

  • Tijdelijke laag maken (TEMPORARY_OUTPUT)

  • Opslaan als bestand…

  • Opslaan naar GeoPackage…

  • Opslaan als tabel voor database…

De bestandscodering kan hier ook gewijzigd worden.

Uitvoer

Label

Naam

Type

Beschrijving

Geïnterpoleerd

OUTPUT

[raster]

De uitvoer TIN-interpolatie als een rasterlaag

Triangulatie

TRIANGULATION

[vector: lijn]

De uitvoer TIN als een vectorlaag

Pythoncode

ID algoritme: qgis:tininterpolation

import processing
processing.run("algorithm_id", {parameter_dictionary})

Het ID voor het algoritme wordt weergegeven als u over het algoritme gaat met de muisaanwijzer in de Toolbox van Processing. Het woordenboek voor de parameters verschaft de NAME’s en waarden van de parameters. Bekijk Processing algoritmes gebruiken vanaf de console voor details over hoe algoritmes van Processing uit te voeren vanuit de console voor Python.