Cartografie
Veel datasets bevatten regionale cijfers. In deze handleiding wordt aan de hand van een voorbeeld over geboortecijfers uitgelegd hoe CBS-data gekoppeld kan worden aan geografische gegevens om een thematische kaart te maken met R of Python. De informatie uit de Snelstartgids wordt bekend verondersteld.
Het CBS publiceert haar geografische kaarten via PDOK (Publieke Dienstverlening Op de Kaart). De dataset "CBS Gebiedsindelingen" bevat de meest gebruikte gebiedsindelingen die het CBS hanteert. Deze geodata is te downloaden in verschillende bestandsformaten zoals Shapefile en GeoJSON, maar het is ook mogelijk om de bestanden geautomatiseerd op te halen met de API. In deze handleiding wordt gebruik gemaakt van de API zodat altijd de meest recente correcties in de kaarten doorgevoerd zijn. Meer informatie over de geo-API is te vinden in de documentatie. Let op: gebiedsindelingen veranderen regelmatig. Kies de juiste geografische informatie bij de data.
De codevoorbeelden kunnen eenvoudig naar het klembord worden gekopieerd door op de knop in het codeblok te klikken. De voorbeelden op deze pagina zijn ook gebundeld te vinden op GitHub.
Keuzemenu programmeertaal:
Voor het werken met geodata wordt in deze handleiding gebruik gemaakt van sf
. Om verschillende bewerkingen eenvoudiger te maken wordt tidyverse
gebruikt, een verzameling van meerdere packages voor het verwerken van data.
De naam van de kolom met geboortecijfers kan opgezocht worden in de metadata van de kerncijfers wijken en buurten.
De tabel bevat 147 kolommen en de geboortecijfers zijn te vinden in de kolommen GeboorteTotaal_24
en GeboorteRelatief_25
. Het is gebruikelijk om in thematische kaarten alleen relatieve aantallen weer te geven zodat regio's van verschillende groottes alsnog vergeleken kunnen worden. De gewenste data kan worden opgevraagd met cbs_get_data
, waarbij de gewenste kolommen in de parameter select
worden ingevuld.
De geodata wordt via de API van het Nationaal Georegister van PDOK ingelezen met st_read
uit sf
.
De geboortedata kan nu gekoppeld worden aan de gemeentegrenzen met een left_join
.
Vervolgens kan de thematische kaart gemaakt worden met het package ggplot2
uit tidyverse
.
Om de CBS-data op te halen kan het package cbsodata
worden gebruikt. Voor het werken met geodata wordt in deze handleiding gebruik gemaakt van geopandas
. De naam van de kolom met geboortecijfers kan opgezocht worden in de metadata van de kerncijfers wijken en buurten.
De tabel bevat 147 kolommen en de geboortecijfers zijn te vinden in de kolommen GeboorteTotaal_24 en GeboorteRelatief_25. Het is gebruikelijk om in thematische kaarten alleen relatieve aantallen weer te geven zodat regio's van verschillende groottes alsnog vergeleken kunnen worden. De gewenste data kan worden opgevraagd met get_data
.
De geodata wordt via de API van het Nationaal Georegister van PDOK gedownload en vervolgens ingelezen met read_file
uit geopandas
.
De geboortedata kan nu gekoppeld worden aan de gemeentegrenzen met merge
.
Tot slot kan de thematische kaart gemaakt worden met de functie plot
.