Ustvarjanje kart zgostitev (QGIS3)

Karte zgostitev (toplotne karte, heatmap) so eno najboljših orodij za vizualizacijo gostih točkovnih podatkov. Gre za tehniko interpolacije, ki je uporabna pri določanju gostote vhodnih elementov. Karte zgostitev se najpogosteje uporabljajo za vizualizacijo podatkov o kriminalu, prometnih nesrečah, gostoti stanovanj itd. QGIS ima upodobitveni program za tovrstne karte, ki ga je mogoče uporabiti za oblikovanje sloja točk, in algoritem obdelave Heatmap (Kernel Density Estimation), ki ga je mogoče uporabiti za ustvarjanje rastra iz sloja točk.

Pregled naloge

Uporabili bomo nabor podatkov o lokacijah kriminala v Surreyju v Združenem kraljestvu in ustvarili karto zgostitev za vizualizacijo območij z visoko gostoto kriminala.

Česa se bomo še naučili

  • Uporaba navideznih polj in pogojnih izrazov

Pridobivanje podatkov

data.police.uk zagotavlja podatke o kaznivih dejanjih na ravni ulic, rezultatih ter o ustavitvah in iskanju v preprosti obliki CSV. Prenesite podatke za Surrey Police in razpakirajte preneseni arhiv, da razberete datoteko CSV.

Lahko jih poberete tudi neposredno na spodnji povezavi:

2019-02-surrey-street.csv

Vir podatkov [POLICEUK]

Postopek

  1. Najprej bomo iz OpenStreetMap naložili sloj osnovne karte in nato uvozili podatke CSV. V zavihku Browser se pomaknite navzdol in poiščite razdelek XYZ Tiles.

../../_images/150.png
  1. Razširite jo, da si ogledate plast ploščic OpenStreetMap. Povlecite in spustite jo na glavno okno. Nato bomo naložili datoteko CSV. Kliknite gumb Open Data Source Manager.

../../_images/229.png
  1. Preklopite na zavihek Delimited Text. Tu bomo uvozili podatke o kaznivih dejanjih, ki so na voljo v besedilni datoteki v obliki CSV. Kliknite gumb poleg Naziv datoteke in poiščite preneseno datoteko 2019-02-surrey-street.csv. Polji X in Y v razdelku Geometry Definition, ki se samodejno napolnita s stolpcema Longitude in Latitude. Polje Geometry CRS je treba pustiti na privzeti definiciji EPSG:4326 - WGS 84. Prepričajte se, da so podatki na plošči Sample data videti pravilno, in kliknite Add ter nato Close.

../../_images/320.png
  1. Na plošči QGIS Layers boste videli 2 plasti - OpenStreetMap in 2019-02-surrey-street. Z desno tipko miške kliknite sloj 2019-02-surrey-street in izberite Zoom to Layer.

../../_images/49.png
  1. Na osnovnem zemljevidu OpenStreetMap se prekrije sloj točk kaznivih dejanj. Podatke lahko raziskujete s povečavo in pomikom. Podatki so precej gosti, zato je težko ugotoviti, kje je velika koncentracija kaznivih dejanj. Tu vam bo prišla prav vizualizacija kart zgostitev. Izberite sloj 2019-02-surrey-street in kliknite gumb Open the Layer Styling panel (Odpri ploščo za oblikovanje sloja).

../../_images/59.png
  1. V meniju spustnega okna kot upodabljajočo napravo izberite Heatmap. Plošča Layer Styling panel je interaktivna in učinek vaših sprememb se lahko takoj odrazi na platnu. Sloj bo zdaj prikazan v privzetem barvnem okvirju v sivih odtenkih.

../../_images/69.png
  1. Karta zgostitev je običajno upodobljena z uporabo barvne skale od rumene do rdeče ali od bele do rdeče, pri čemer večja koncentracija točk pomeni več toplote ali gostote. Kliknite spustni meni Color ramp in izberite barvno rampo Reds.

../../_images/79.png
  1. Nato morate izbrati Radius. Ta parameter določa krožno okolico okoli vsake točke, na katero bo ta točka vplivala. Ta vrednost bo v veliki meri odvisna od vrste vaših vhodnih podatkov. Za naše podatke predpostavimo, da bo imel kriminalni dogodek vpliv do 5 kilometrov od lokacije. Opazite, da je trenutni CRS projekta nastavljen na EPSG: 3857 v spodnjem desnem kotu. Ta CRS ima enoto meter, zato moramo kot polmer določiti 5000 metrov. Drugi parameter, ki je skrit v tem meniju, je Kernel shape (oblika jedra). To je funkcija, ki določa, kako naj se vpliv točke porazdeli po danem polmeru. Renderer toplotnih kart za ta izračun uporablja funkcijo Quartic. Obstajajo tudi druge vrste jeder, kot so Triangular, Uniform, Triweight in Epanechnikov, ki jih lahko določite pri uporabi drugačne metode ustvarjanja kart zgostitev, opisane v nadaljevanju tega priročnika. Za dobro razlago in navodila za izbiro pravega polmera in oblike jedra glejte to objavo.

../../_images/89.png
  1. Vizualizacija karte zgostitev je pripravljena. V spodnjem razdelku Layer Rendering lahko prilagodimo Opacity karte. Nastavite neprozornost na 60 %, da boste poleg karte zgostitev videli tudi osnovno karto.

../../_images/99.png
  1. Za mnoge vrste analiz je dovolj, če upoštevamo samo gostoto točk. Včasih pa boste morda želeli vsaki točki pripisati drugačno pomembnost. Bolj nasilen zločin bi moral imeti večji vpliv na izhodno karto zgostitev kot rop. Podobno lahko včasih točka predstavlja več opazovanj na eni lokaciji, kar je treba upoštevati pri analizi. V ta namen lahko zagotovite neobvezno številčno polje weight, ki določa vrednost za vsako točko. Dodajmo polje uteži in ga uporabimo za izboljšanje karte. Z desno tipko miške kliknite sloj 2019-02-surrey-street in izberite Open Attribute Table.

../../_images/1013.png
  1. V vhodnih podatkih boste videli besedilno polje z imenom Crime type, ki opisuje vrsto kaznivega dejanja. To polje lahko uporabimo za kategorizacijo različnih vrst kaznivih dejanj in dodelimo večjo utež bolj nasilnim kaznivim dejanjem.

../../_images/1116.png
  1. Kliknite na Open field calculator.

../../_images/1214.png
  1. Zdaj bomo vnesli formulo, ki bo uporabila vrsto kaznivega dejanja in določila vrednost uteži. QGIS ima priročen način dodajanja takšnih izračunanih polj z uporabo Virtualnih polj. Navidezno polje je shranjeno v projektu QGIS in ne spreminja izvornih podatkov. Prav tako je dinamično izračunano in se lahko uporablja kjer koli v QGIS, tako kot katera koli druga vrednost atributa. Kot Output field name vnesite weight in nastavite Output field type na Whole number (integer). V urejevalnik Expression editor vnesite naslednji izraz. Tu uporabljamo stavek CASE za dodeljevanje različnih vrednosti na podlagi različnih pogojev. Kliknite OK.

CASE
WHEN "Crime type" LIKE 'Violence%' THEN 10
WHEN "Crime type" LIKE 'Criminal%' THEN 5
ELSE 1
END
../../_images/1312.png
  1. Za vsako značilnost bo dodan nov atribut z ustrezno vrednostjo uteži.

../../_images/1411.png
  1. Na plošči Layer Styling kliknite spustni meni za Weight points by in izberite novo dodano polje weight.

../../_images/1511.png
  1. Videli boste, da se upodabljanje karte zgostitev spremeni zaradi upoštevanja parametra uteži. Zaprite ploščo Layer Styling.

../../_images/1610.png
  1. Če želite vizualizacijo karte zgostitev shraniti kot trajno rastrsko plast ali prilagoditi karto z naprednimi možnostmi, kot so različna jedra ali dinamični polmer, lahko uporabite Heatmap (Kernel Density Estimation) iz zbirke orodij za obdelavo. Zdaj bomo uporabili ta algoritem. Pojdite na Processing ‣ Toolbox.

../../_images/1711.png
  1. Preden lahko ustvarimo karto zgostitev, moramo izvorne podatke ponovno projicirati v predvideni CRS. Ker ima razdalja pomembno vlogo pri izračunu karte zgostitev, uporaba geografskega CRS ni pravilna. Poiščite in najdite algoritem Vector general ‣ Reproject layer.

../../_images/189.png
  1. V pogovornem oknu Reproject layer kliknite gumb Select CRS za Target CRS. Poiščite in izberite CRS EPSG:27700 OSGB 1936 / British National Grid. Ta predvideni CRS je dobra izbira za podatke v Združenem kraljestvu. Kliknite Run.

../../_images/198.png
  1. Na ploščo Layers bo dodana nova plast z imenom Reprojected. Odkljukajte polje poleg starega sloja 2019-02-surrey-street, da ga skrijete.

../../_images/208.png
  1. Poiščite in najdite algoritem Interpolacija ‣ Heatmap (Kernel Density Estimation).

../../_images/2113.png
  1. V pogovornem oknu Heatmap (Kernel Density Estimation) bomo uporabili iste parametre kot prej. Izberite Radius kot 5000 metrov in Weight from field kot weight. Nastavite Pixel size X in Pixel size Y na ``50` metrov. Naj bo vrednost Kernel shape privzeta vrednost Quartic. Kliknite Run.

../../_images/2210.png

Opomba

Parameter Radius from field omogoča določitev dinamičnega polmera iskanja za vsako točko. To lahko uporabite skupaj s parametrom Weight from field za natančnejši nadzor nad tem, kako se razširi vpliv vsake točke.

  1. Ko se obdelava konča, se naloži nov rastrski sloj z imenom OUTPUT. Privzeta vizualizacija je grda, saj uporablja izrisovalnik Singleband gray. Kliknite gumb Open the Layer Styling panel (Odpri ploščo za oblikovanje plasti).

../../_images/237.png
  1. Spremenite način upodabljanja na ``Singleband Pseudocolor´´ in izberite barvno rampo ``Reds´´. Sloj je zdaj videti kot vizualizacija karte zgostitev, ki smo jo ustvarili prej.

../../_images/248.png

Opomba

Opazite, da ima plast OUTPUT na plošči Layers` legendo, plast 2019-02-surrey-street pa ne. Pogosta težava pri uporabi sloja karte zgostitev, ustvarjene z upodabljalnikom Heatmap, je pomanjkanje legende. Recimo, da želite toplotno karto uporabiti v Print Layout in dodati legendo. Rastrski sloj, ustvarjen z metodo algoritma za obdelavo kart zgostitev, to omogoča.


If you want to give feedback or share your experience with this tutorial, please comment below. (requires GitHub account)