Samenvoegen van tabellen uitvoeren (QGIS3)

Niet elke gegevensset die u wilt gebruiken komt in een ruimtelijke indeling. Vaak komen de gegevens als een tabel of een werkblad en zou u het moeten koppelen met uw bestaande ruimtelijke gegevens om in uw analyses te kunnen gebruiken. Deze bewerking staat bekend als een Table Join en wordt uitgevoerd met het algoritme voor processing Join attributes by field value.

Overzicht van de taak

We will use a shapefile of census tracts for California and population data table from US Census Bureau to create a population density map for california.

Andere vaardigheden die u zult leren

  • CSV-bestanden, die geen geometrie bevatten, laden in QGIS.

  • DB Manager gebruiken om query’s voor SQL uit te voeren om statistieken voor groepen te berekenen.

De gegevens ophalen

US Census Bureau verschaft TIGER/Line Shapefiles. U kunt de FTP site bezoeken en het census tracts shapefile voor Californië downloaden. Download het bestand Census Tracts for California.

Americal FactFinder is een opslagplaats voor alle bevolkingsgegevens voor de VS. U kunt de Advanced Search gebruiken en bevragen naar Topic - Basic Count/Estimate en Geographies - All Census Tracts in California om een aangepast CSV te maken en dat te downloaden. Deze handleiding gebruikt de gegevens van TOTAL POPULATION | 2017 ACS 5-year estimates.

../../_images/data13.png

Voor het gemak kunt u direct een kopie van beide gegevenssets downloaden vanaf de links hieronder:

tl_2018_06_tract.zip

ACS_17_5YR_B01003.zip

Gegevensbron: [TIGER] [USCENSUS]

Procedure

  1. Zoek in de QGIS Browser naar het bestand tl_2018_06_tract.zip en vergroot het. Selecteer het bestand tl_2018_06_tract.shp en sleep het naar het kaartvenster.

../../_images/1104.png
  1. U zult de laag tl_2018_06_tract zien geladen in het paneel Lagen. Deze laag bevat de grenzen van de census tracts in Californië. Klik met rechts op de laag tl_2018_06_tract en selecteer Attributentabel openen.

../../_images/257.png
  1. Bekijk de attributen van de laag. We hebben een uniek en algemeen attribuut voor elk object nodig om aan tabel met deze laag te koppelen. In dit geval is het veld GEOID een unieke identificatie voor elke tract en kan worden gebruikt om deze laag te koppelen aan elke andere laag of tabel die dezelfde ID bevat.

../../_images/335.png
  1. Pak het bestand ACS_17_5YR_B01003.zip uit en open het bestand ACS_17_5YR_B01003_with_ann.csv in een tekstbewerker. Het zal u opvallen dat elke rij van het bestand bestaat uit informatie over een tract naast de unieke identificatie die we in de vorige stap al zagen. Onthoud dat dit veld is genaamd GEO.id2 in het CSV. Het zal u ook opvallen dat de kolom HD01_VD01 de waarde bevat voor de bevolking voor elk van de census tract.

../../_images/420.png
  1. We dienen een kleine bewerking te maken voordat we dit CSV-bestand importeren. Het importprogramma voor CSV van QGIS verwacht dat de eerste rij van het bestand de kolomkoppen bevat en alle andere rijen de gegevens voor die kolommen. Dit bestand bevat een extra rij 2 met labels voor kolommen. Verwijder die rij en sla het bestand op.

../../_images/520.png
  1. Nu zijn we gereed om het CSV-bestand in QGIS te importeren. Ga naar Kaartlagen – Laag toevoegen ‣ Tekstgescheiden laag toevoegen....

../../_images/620.png
  1. Klik, in het venster Databronnen beheren, op de knop en blader naar het CSV-bestand en selecteer het. Zorg er voor dat u bij Bestandsindeling hebt geselecteerd CSV (komma gescheiden waarden). Omdat we dit als een tabel importeren, moeten we specificeren dat ons bestand geen geometrie bevat met de optie Geen geometrieën (alleen attributentabel). Verifieer dat het voorbeeld Voorbeeldgegevens aan de onderzijde er goed uitziet en klik op Toevoegen, gebolgd door Close.

../../_images/719.png
  1. De CSV zal nu worden geïmporteerd als een tabel in QGIS en zal verschijnen als ACS_17_5YR_B01003_with_ann in het paneel Lagen. Nu zijn we klaar om de samenvoeging van de tabellen uit te voeren. Ga naar Processing ‣ Toolbox.

../../_images/819.png
  1. Eerst moeten we een standaard instelling wijzigen in de Processing Toolbox. Klik op de knop Opties.

../../_images/919.png
  1. Selecteer, op de tab Processing Opties, de optie Bestandsnaam als laagnaam gebruiken. Deze optie maakt de namen van de uitvoerlagen meer intuïtief en nuttiger bij het gebruiken van algoritmes van Processing Toolbox. Klik op OK.

../../_images/1019.png
  1. Terug in de Processing Toolbox, zoek en lokaliseer het algoritme Vector algemeen ‣ Attributen koppelen op veldwaarde en dubbelklik er op om het te openen.

../../_images/1122.png
  1. Selecteer, in het dialoogvenster Attributen koppelen op veldwaarde, tl_2018_06_tract als Invoerlaag en GEOID als het Tabelveld. Selecteer ACS_17_5YR_B01003_with_ann als de Invoerlaag 2 en GEO.id2 als Tabelveld 2. Laat de andere opties op hun standaard en klik op de knop om de locatie voor het uitvoerbestand te selecteren en selecteer ``Opslaan naar GeoPackage…`.

../../_images/1220.png
  1. Noem het uitvoer Geopackage joined.gpkg en de uitvoerlaag als joined. Klik op Uitvoeren.

../../_images/1319.png
  1. Verifieer, als de verwerking is voltooid, dat het algoritme met succes werd uitgevoerd en klik op Close.

../../_images/1418.png
  1. U zult een nieuwe laag Samengevoegde laag zien geladen in het paneel Lagen. Op dit punt zijn de velden uit het CSV-bestand gekoppeld aan de laag census tracts. U kunt voor nu de Processing Toolbox sluiten. Klik met rechts op de laag Samengevoegde laag en selecteer Attributentabel openen.

../../_images/1517.png
  1. U zult een nieuwe set velden zien, inclusief het veld HD01_VD01 dat de schattingen voor de bevolking bevat.

../../_images/1616.png
  1. Now that we have the population data in the census tracts layer, we can style it to create a visualization of population density distribution. Select the joined layer and click the Open the Layer Styling Panel button.
../../_images/1717.png
  1. In the Layer Styling panel, select Graduated from the drop-down menu. As we are looking to create a population density map, we want to assign different color to each census tract feature based on the population density. We have the population in the HD01_VD01 field, but we don’t have population density in any fields to select as the Value. Fortunately, QGIS allows us to input an expression here. Click Expression button.
../../_images/1816.png

Notitie

When creating a thematic (choropleth) map such as this, it is important to normalize the values you are mapping. Mapping total counts per polygon is not correct. It is important to normalize the values dividing by the area. If you are displaying totals such as crime, you can normalize them by diving by total population, thus mapping crime rate and not crime. Learn more

  1. Enter the following expression to calculate the population density. $area calculates the area of the feature in square meters. We then convert it to square miles and calculate the population density with the formula Population/Area. Click OK.
"HD01_VD01"/ (0.386*$area/1e6)
../../_images/1913.png
  1. Back in the Layer Styling Panel, choose a color ramp of your choice and click Classify. You can adjust the class ranges to be more appropriate to the region.
../../_images/2010.png
  1. The visualization feels a bit cluttered because of the polygon borders. Click on the dropdown next to Symbol. Select Simple fill and check Transparent stroke.
../../_images/2115.png
  1. Now we have a nice looking information visualization of population density in California.
../../_images/2213.png
If you liked tutorials on this site and do check out spatialthoughts.com for more free resources.
comments powered by Disqus

This work is licensed under a Creative Commons Attribution 4.0 International License