Vectoranalyse
| サイト: | OpenCourseWare for GIS |
| コース: | QGIS Introductie Workshop |
| ブック: | Vectoranalyse |
| 印刷者: | Invitado |
| 日付: | 2025年 11月 5日(水曜日) 01:15 |
1. Introductie
Welkom bij deze praktijkgerichte tutorial waarin je kennismaakt met enkele van de krachtigste geoprocessing tools in QGIS: Clip, Dissolve, Buffer en Intersect. Deze tools vormen de ruggengraat van ruimtelijke analyses en bieden je de mogelijkheid om geografische data te combineren, filteren en bewerken op basis van ruimtelijke relaties.
We gaan eerst uitrekenen welk percentage van de oppervlakte van wijken in Groningen is bebouwd met panden. Vervolgens gaan we uitrekenen hoeveel gebouwen er liggen binnen 500 meter van het hoofdstation van Groningen. We gebruiken hiervoor data van de BGT, het CBS en OpenStreetMap.
2. Data downloaden van het CBS
We gaan eerst data downloaden van het Centraal Bureau voor de Statistiek. Deze data zijn beschikbaar via de PDOK Services Plugin in QGIS. Eerst gaan we de gemeentegrenzen downloaden en vervolgens de wijken.
2.1. Downloaden gemeentegrenzen
- Open QGIS Desktop met een leeg project.
- Installeer de PDOK Services plugin van de plugins manager als je dit nog niet hebt gedaan.
- Klik op
in de toolbar. - Zoek Gemeenten van de CBS Wijken en Buurten 2024 Service zoals in onderstaande screenshot en voeg het toe aan je project door op Standaard te klikken.

De vectorlaag met gemeentepolygonen wordt nu geladen.
Laten we eens kijken welke attributen er zijn.
5. Ga naar het Lagenpaneel en klik met de rechtermuisknop op Gemeenten. Kies Eigenschappen uit het menu.

6. Bekijk de informatie onder de Informatie tab.
- Welke velden heeft deze laag?

2.2. Selecteren van een polygoon
Omdat de attribuuttabel groot is, gaan we gemeente Groningen op een andere manier selecteren.
- Ga in de toolbar naar
.

2. Typ voor het veld gemeentenaam Groningen en selecteer Groningen en selecteer Is gelijk aan (=) als criterium.

3. Klik op Objecten selecteren.
Als het goed is is de gemeente Groningen nu geselecteerd.
4. Klik Sluiten om het dialoogvenster te sluiten.
2.3. Exporteren geselecteerde polygoon
We gaan nu de geselcteerde polygoon van de gemeente Groningen exporteren naar een vectorbestand op de harde schijf. Als formaat gaan we GeoPackage gebruiken, zodat we alle data van dit project netjes in 1 bestand hebben staan.
- Ga naar het Lagenpaneel en klik met de rechtermuisknop op Gemeente.
- Kies Exporteren | Geselecteerde objecten opslaan als... uit het menu.

3. Laat in het dialoogvenster de Indeling staan als GeoPackage. Navigeer bij Bestandsnaam met de
knop naar de lokatie waar je de GeoPackage wilt opslaan en geef onder Laagnaam de naam Gemeente Groningen.

4. Laat alles verder zo staan en klik op OK.
We hebben de laag met alle gemeenten niet meer nodig.
5. Ga naar het Lagenpaneel en klik met de rechtermuisknop op Gemeenten en selecteer Laag verwijderen uit het menu.

6. Inspecteer het resultaat.

2.4. Downloaden wijken
Op dezelfde manier kunnen we de wijken laag van het CBS downloaden.
- Ga naar de PDOK Services plugin en download de Wijken 2024 laag zoals in onderstaande screenshot.

2. Bekijk de velden in de Laageigenschappen zoals we eerder hebben gedaan.
Hoewel de attributentabel een veld heeft met de gemeentenaam, gaan we die hier niet gebruiken om de wijken in Groningen te selecteren. In plaats daarvan gaan we de Clip tool gebruiken.
2.5. Vectorlagen knippen
Omdat we alleen de wijken in de gemeente Groningen nodig hebben, gaan we die uitknippen met behulp van de Gemeente Groningen polygoon.
- Ga in het hoofdmenu naar Vector | Geoprocessing Tools | Clippen....

2. Kies in het dialoogvenster Wijken als Invoerlaag en Gemeente Groningen als Overlay laag.
3. Klik onder Geclipt op
om naar vectoranalyse.gpkg te navigeren en typ in de popup als Laagnaam wijken in Groningen en klik OK.


4. Klik op Uitvoeren.
5. Klik op Sluiten om het dialoogvenster te sluiten.
6. Verwijder de volledige Wijken laag uit het Lagenpaneel zoals we dat eerder voor Gemeenten hebben gedaan.

3. BGT-gegevens downloaden in QGIS
In dit hoofdstuk leer je hoe je gebouwdata uit de Basisregistratie Grootschalige Topografie (BGT) kunt downloaden en gebruiken in QGIS. De BGT is een gedetailleerde en actuele topografische kaart van Nederland, waarin objecten zoals gebouwen, wegen, water, groen en spoorlijnen zijn vastgelegd. Deze registratie is verplicht voor overheden en wordt continu bijgewerkt, waardoor het een betrouwbare bron is voor ruimtelijke analyses.
Voor onze case study, het berekenen van het percentage gebouwen per wijk in Groningen, hebben we specifiek de pandobjecten uit de BGT nodig. Deze geven ons inzicht in de ligging en oppervlak van gebouwen binnen de gemeentegrenzen.
De meest efficiënte manier om BGT-data in QGIS te halen is via de BGT Downloader plugin. Deze plugin maakt het mogelijk om rechtstreeks vanuit QGIS een selectie te maken op basis van locatie en objecttype, en de data vervolgens automatisch te downloaden en te laden in je project.
3.1. Installeren BGT Downloader plugin
Om BGT objecten eenvoudig te downloaden, gebruiken we de BGT Downloader plugin.
- Installeer de BGT Downloader plugin.

Dit is een goed moment om je project op te slaan in je GeoPackage.
2. Ga in het hoofdmenu naar Project | Opslaan naar | GeoPlackage....

3. Klik in de popup op
om te navigeren naar je GeoPackage.
4. Noem je project vectoranalyse en klik OK.

Je project is nu opgeslagen in de GeoPackage samen met de lagen die erin zitten. Je kan het project nu eenvoudig delen met collega's, veel makkelijker dan met afzonderlijke bestanden met referenties naar GIS-bestanden die op verschillende plaatsen staan.
3.2. Download BGT objecten
We gaan nu de panden in Groningen downloaden met de BGT Downloader plugin.
- Klik in de toolbar op
. - Klik in het dialoogvenster op de Browse... knop om te navigeren naar de lokatie van je bestanden voor dit project en sla het resultaat op onder een nieuwe GeoPackage.
Sommige tools, zoals de BGT Downloader plugin, kunnen geen resultaten naar een bestaande GeoPackage schrijven. Je krijgt dan een popup die vraagt of je de bestaande GeoPackage te overschrijven. In dat geval verlies je de bestaande data. Let dus goed op of je tool een nieuwe laag aan een bestaande GeoPackage kan toevoegen.
3. Klik onder Bereik op Laag en kies de Gemeente Groningen laag, zodat alleen data voor data gebied wordt gedownloaded.
4. Klik op onder BGT Features op Deselect all en selecteer vervolgens alleen pand.

5. Klik op Run.
6. Klik in de popup op Ja om de laag toe te voegen en sluit het dialoogvenster.

4. Vectorobjecten samenvoegen (dissolve)
De volgende stap is om alle panden samen te voegen tot een groot object, om die later te versnijden met de wijkenlaag. Dit kunnen we doen met de samenvoegen (dissolve) tool.
- Ga in het hoofdmenu naar Vector | Geoprocessing Tools | Samenvoegen....

Met de Samenvoegen tool kan je objecten samenvoegen op basis van een veld. Velden met dezelfde waarde worden dan 1 object. Hier willen we alle objecten samenvoegen. Daarom specificeren we geen veldnaam.
2. Selecteer in het dialoogvenster als Invoerlaag de BGT pand laag en navigeer naar de bestaande vectoranalyse.gpkg GeoPackage. Geef als laagnaam panden samengevoegd.

3. Klik op Uitvoeren en op Sluiten als de berekening klaar is. Dit zal even duren.
4. Bekijk het resultaat in het kaartvenster en de attributentabel.
- Hoeveel objecten staan in de attributentabel?
5. Vectorlagen kruisen (intersect)
De volgende stap om de panden te versnijden met de wijkenlaag.
Als er in beide lagen een overeenkomstig veld zou zijn, zouden we een zogenaamde join operatie kunnen doen. In dit geval is er geen overeenkomstig veld en gaan we een kruising (intersection) doen. De kruising tool werkt als volgt:
-
Selecteert alleen de gedeelten waar beide lagen elkaar overlappen.
-
Behoudt attributen van beide lagen, maar alleen voor het overlappende gebied.
-
Resultaat: een nieuwe laag met enkel de intersectie van de inputlagen.
- Kies in het hoofdmenu Vector | Geoprocessing Tools | Kruising....

2. Kies in het dialoogvenster panden samengevoegd als Invoerlaag en wijken in Groningen als Overlay laag.
3. Omdat we niet alle velden van beide lagen nodig hebben, selecteren we alleen fid van de panden samengevoegd laag en oppervlakte_totaal_in_ha van de wijken in Groningen laag.
4. Sla de laag op in de bestaande vectoranalye.gpkg en noem het kruising pand wijk. Klik op Uitvoeren.

5. Inspecteer het resultaat in het kaartvenster en de attributentabel.
6. Oppervlakte van polygonen berekenen
We kunnen nu het totale pandoppervlak in elke wijk berekenen.
- Ga naar het Lagenpaneel en klik met de rechtermuisknop op kruising pand wijk.
- Klik in het menu op Attributentabel openen.
- Klik op Open veldberekening
in de toolbar van de attributentabel. - Geef het nieuwe veld de naam
pandoppervlak in hamet Veldtype Decimaal getal (real). - Zoek de
$areafunctie en dubbelklik om die toe te voegen aan de expressie. Om m2 converteren naar hectare moet er nog gedeeld worden door 10.000. De expressie ziet er dan uit zoals de screenshot hieronder.

6. Klik OK om uit te voeren en terug te keren naar de tabel en bekijk het resultaat.
7. Percentage berekenen
Omdat we nu voor elke wijk de totale oppervlakte van de wijk hebben en het pandoppervlak, beide in hectare, kunnen we nu het percentage pandoppervlak per wijk berekenen.
- Klik opnieuw op Open veldberekening
in de toolbar van de attributentabel. - Geef als veldnaam
percentage pandoppervlakmet Veldtype Decimaal getal (real). - Om het percentage te berekenen moeten we de volgende expressie formuleren:
( "pandoppervlak in ha" / "oppervlakte_totaal_in_ha" ) * 100
Je kan dit het beste doen door de veldnamen op te zoeken onder Velden en waarden en daarop te dubbelklikken om ze netjes met dubbele aanhalingstekens toe te voegen aan de expressie. Ook voor de deling, vermenigvuldiging en haakjes kan je het best de knoppen gebruiken.

4. Als het dialoogvenster eruit ziet als hierboven, klik dan OK om het uit te voeren en terug te keren naar de tabel.
5. Bekijk het resultaat.
6. Klik op
om de bewerkingsmodus af te sluiten en de resultaten op te slaan.

8. Koppel attributen op basis van plaats
Als laatste willen we graag de percentages pandoppervlak toevoegen aan de wijkenlaag. Dat gaan we doen met een koppeling op basis van plaats (spatial join).
Een koppeling op basis van plaats, ook wel bekend als een spatial join, is een geoprocessing techniek waarbij attributen van één laag worden toegevoegd aan een andere laag op basis van hun ruimtelijke relatie. In plaats van te koppelen via een gemeenschappelijk veld (zoals bij een reguliere join), gebeurt de koppeling hier op basis van locatie.
Hoe werkt het?
-
QGIS kijkt of objecten uit laag A ruimtelijk overlappen, binnen liggen of dichtbij objecten uit laag B.
-
Als er een ruimtelijke relatie is, worden de attributen van het ene object toegevoegd aan het andere.
-
Je kunt kiezen welk type ruimtelijke relatie je wilt gebruiken: overlap, binnen, snijdt, afstand tot, enz.
- Ga in het hoofdmenu naar Vector | Data Management Tools | Koppel attributen op basis van plaats....

2. Kies in het dialoogvenster onder Samenvoegen met objecten in voor wijken in Groningen. Dit is de laag waar velden van een andere laag aan gaan toevoegen.
3. Laat kruisen met aangevinkt.
4. Kies onder In vergelijking met voor kruising pand met wijk.
5. Laat de rest zoals het is en sla het resultaat op in het reeds bestaande GeoPackage (vectoranalyse.gpkg) met als laagnaam wijken met percentage pandoppervlak.

6. Klik op Uitvoeren en Sluiten als de berekening voltooid is.
7. Bekijk het resultaat in het kaartvenster en de attributentabel.
9. Stijl en labels toevoegen
We gaan de wijkenlaag nu visualiseren met het percentage pandoppervlak.
- Selecteer de laag wijken met percentage pandoppervlak in het Lagenpaneel.
- Klik op
in de toolbar van het Lagenpaneel om het Laag opmaken paneel te openen.
Het Laag opmaken paneel is een eenvoudigere manier om stijlen en labels toe te voegen dan via de Laageigenschappen. Door het Laag opmaken paneel te gebruiken zie je direct het resultaat in het kaartvenster.
3. Kies Gradueel in plaats van Enkel symbool, kies een kleurverloop en klik op Classificeren. Vergelijk de verschillende opties onder Modus om een mooi inzichtelijk resultaat te krijgen.

Om het nog inzichtelijker te maken gaan de wijknamen en percentages toevoegen als labels.
4. Klik in het Laag opmaken paneel op de label
tab.
5. Verander Geen labels in Enkele labels.
6. Kies voor Waarde het veld Wijknaam.
We gaan hier nu de percentages aan toevoegen met een expressie.
7. Klik op
naast Wijknaam.
8. We gaan onderstaande expressie formuleren.
"wijknaam" || '\n' || format_number( "percentage pandoppervlak",1) || '%'
Hier betekent || dat we een string (tekst) plakken aan het voorgaande. '\n' betekent dat we naar een nieuwe regel gaan. Met de functie format_number() kunnen we aangeven hoe we de getallen willen afronden. In dit geval met 1 decimaal.

9. Klik op OK om de expressie toe te passen.
10. Speel met de instellingen om de tekst beter in de polygonen te visualiseren.
