Gispon QGIS-lisäosat hyötykäyttöön

Kesäkuun puolessa välissä pidetyn Gispon QGIS-webinaarin innoittama päätin kirjoittaa pienen ohje-tyylisen blogin siitä, miten Gispon kehittämistä lisäosista ja yksinkertaisista QGISin geoprosesseista voi saada tukea päätöksentekoon. Kuten moni teistä varmasti tietääkin, QGIS on paikkatietojen hyödyntämiseen kehitetty työasemaohjelmisto, jota voi muokata omanlaisekseen paitsi kustomoimalla työtilaa myös lataamalla erilaisia lisäosia, joita on saatavilla yli 1400 virallista. Kuka tahansa voi kehittää uusia lisäosia luomalla OSGeo-käyttäjätunnuksen, lataamalla kehittämänsä pluginin QGIS Python Plugins Repositoryyn ja tekemällä mahdollisesti pyydettävät korjaukset / muokkaukset. Huomaa, että huolimatta siitä, että QGISin ohjelmointikieli on C++, lisäosat ja skriptit tuotetaan Pythonilla. Alla näet listan Gispon tuottamista QGISin lisäosista:

Mainittakoot, että yllä listattujen QGISin lisäosakirjastosta saatavilla olevien pluginien lisäksi Gispo on kehittänyt KuntaGML pluginin, jonka saa asennettua QGISiin käymällä lataamassa Release ZIPin Githubista.

Tässä blogissa hyödynnettävien lisäosien lyhyet esittelyt

Catchment – saavutettavuusalueen laskenta GraphHopperin avulla

  • Matkustusaika/-matka määritetään OpenStreetMapin tieverkkoon perustuen

Digitransit.fi Geocoder – suomalaisten osoitteiden geokoodaus

  • Hyödyntää MMLn, Digi -ja väestötietoviraston ja OpenStreetMapin aineistoja

FMI2QGIS – työkalu Ilmatieteen laitoksen (WMS- tai WFS-rajapintojen kautta saatavilla oleviin) avoimien aineistojen lataamiseen ja tarkasteluun

  • Esimerkkejä näyttävistä FMI2QGISin avulla tuotetuista visualisoinneista voit tarkastella täältä

NLS GeoPackage Downloader – MMLn aineistojen jakelua ja visualisointia helpottava maastotietokantalisäosa

  • Yhteen GeoPackageen voidaan varastoida useita eri maastotietokanta-aineistoja ja niihin yhdistettyjä tyylejä

Paras tapa oppia on esimerkkien kautta, joten lähdetään pidemmittä puheitta pohtimaan seuraavaa ongelmaa

Asut Helsingissä ja olet harkitsemassa muuttoa kaupungin sisällä. Olet löytänyt kiinnostavan asunnon, mutta et osaa päättää kannattaisiko muutto vai pitäisikö uuden asunnon etsintää jatkaa samalta alueelta, jossa tällä hetkellä asut. Rakastat ulkoilua ja liikkumista, josta mieleesi tuleekin, että jos pystyisit vertailemaan löytämäsi asuntovaihtoehdon ja nykyisen asuinalueesi ulkoilu- ja virkistysaluetarjontaa, niin päätös voisi olla helpompi tehdä. Tosin, voisit olla halukas antamaan hieman periksi lähialueen tarjoamista ulkoilu- ja liikuntamahdollisuuksista, mikäli uuden työpaikkasi lähistöllä sattuu olemaan paljon puistoja, joissa ulkoilla työpäivän jälkeen, lounastauoilla tai vaikka kävelypalavereita pitäessä. Et pidä kovinkaan tärkeänä sitä, mikä varsinainen etäisyys työpaikaltasi on kotiisi, sillä tulet kulkemaan työmatkat kuitenkin julkisilla. Tärkeintä olisi löytää kiva asunto viihtyisässä ja vehreässä asuinympäristössä.

Esimerkkiongelman ratkaisemiseen soveltuva workflow

1. Lataa Catchment-plugin Githubista (Releases → Assets). Asenna se QGISiin avaamalla QGIS ja navigoimalla Plugins →Manage and Install plugins → Install from ZIP.

2. Navigoi jälleen Plugins →Manage and Install plugins, mutta tällä kertaa siirry All-välilehdelle ja kirjoita ikkunan yläreunassa näkyvään hakupalkkiin “Gispo” (tai etsimäsi pluginin nimi). Asenna tällä tavalla itsellesi Digitransit.fi Geocoder, NLS GeoPackage Downloader ja FMI2QGIS lisäosat.

  • Huomaa, että Catchment-plugin olisi voitu asentaa myös tällä tavalla

3. Geokoodaa Digitransit.fi-pluginin avulla osoitteet, joista olet kiinnostunut:

  • Uuden potentiaalisen asunnon osoite on Mannerheimintie 1
Potentiaalisen asunnon osoitteen geokoodaus.
  • Asut tällä hetkellä Vallilassa (analyysin tarkkuudeksi riittää asuinalueen keskipiste, sillä mielessäsi ei ole mitään tiettyä asuntoa Vallilassa)
  • Aloitat työskentelyn Ilmatieteen laitoksella ensi syksynä
Nykyisen asuinalueen ja tulevan työpaikan geokoodaus.
  • Säätämällä minimaalista hyväksyttävää luotettavuustasoa voidaan kontrolloida miten suurilta osin näytettävien tulosten tulee olla yhteensopivia hakukentän syötteen kanssa

4. Selvitä Catchment-pluginin avulla mitkä alueet voit tavoittaa vartin pyöräilyllä sekä potentiaalisesta uudesta asunnosta että nykyiseltä asuinalueeltasi. Selvitä myös miten kauas voit ehtiä kävellen 10 minuutissa uudelta työpaikaltasi.

Saavutettavuusalueiden määritys.

5. Lataa NLS GeoPackage Downloader -pluginin avulla QGISiin ongelmamme kannalta relevantit maastotietokanta-aineistot (kansallispuistot, puistot, retkeilyalueet ja urheilu- ja virkistysalueet). Tarkastele ennen latauksen aloittamista minkä UTM karttalehtien alueelle Catchment-pluginin avulla määritetyt saavutettavuusalueet ulottuvat, jotta voit minimoida ladattavan aineiston määrän.

  • Ladataan tässä vaiheessa MMLn ainestosta myös merialueet, jotta saadaan myöhemmin suoritettavat pinta-ala-analyysit toteutettua realistisesti
  • Huomaa, että tutkimusalueemme ei sisällä yhtään kansallispuistoa tai retkeilyaluetta

6. Navigoi Vector → Geoprocessing Tools → Union ja luo uusi karttataso, joka sisältää sekä puistoja että urheilu- ja virkistysalueita kuvaavat polygonit.

Puisto- ja urheilu- ja virkistysalue polygonien yhdistäminen samaan karttatasoon.

7. Navigoi Vector → Geoprocessing Tools → Clip ja leikkaa vaiheessa 6 tuotettua yhdistelmätasoa vaiheessa 4 tuotetuilla saavutettavuusalueilla. Nimeä tuloskarttatasot uudelleen, jotta pystyt erottamaan ne toisistaan jatkossakin.

Viheralueet sisältävän karttatason leikkaaminen Ilmatieteen laitoksen saavutettavuusalueella.

8. Luo vaiheessa 7 tuotettuihin karttatasoihin uusi polygonin pinta-alatiedon sisältävä sarake. Polygonin pinta-alan saat laskettua kaavalla $area.

Karttatason polygonien pinta-alojen laskeminen.

9. Navigoi Processing → Toolbox → Basic Statistics for Fields ja analysoi vaiheessa 8 luotua pinta-ala-saraketta. Tällä tavoin saat selville mm. montako puisto tai urheilu-/virkistysaluetta kukin saavutettavuusalue pitää sisällään. Tuotetuista tilastoista saat selville myös saavutettavuusalueiden sisältämien viheralueiden kokonaispinta-alan.

Tilastollisten tunnuslukujen tuottaminen.
  • Vaihtoehtoisesti voit tarkastella saavutettavuusalueiden välisiä eroja karttapohjalla. Karttapohjalta näkee kivasti miten saavutettavuusalueet menevät osittain päällekkäin. Tämä tieto voi olla tarpeellinen, jos mielessäsi on vaikka jokin tietty lempipuisto tai seurajoukkueesi kotikenttä, jonka sisältyminen saavutettavuusalueelle on erityisen tärkeää

10. Pinta-alatietoa voidaan hyödyntää myös laskemalla puisto ja urheilu- ja virkistyalueiden pinta-ala prosentteina saavutettavuusalueiden pinta-alasta. Mikäli latasit merialueet NLS pluginilla jo vaiheessa 5, voit siirtyä suoraan leikkamaan merialueet sisältävää karttatasoa saavuttetavuusalue-karttatasoilla. Jokaiselle tuloksena saadulle saavutettavuusalueen X merialueet sisältävälle karttatasolle navigoi Vector → Geoprocessing Tools → Dissolve.

  • Dissolve-prosessi yhdistää kaikki saavutettavuusalueen merialueet yhdeksi polygoniksi ja mahdollistaa merialueiden pinta-alan selvittämisen napauttamalla info-työkalulla ko. polygonia (Derived-osio → Area)

Viheralueiden prosentuaalinen osuus saavutettavuusalueiden pinta-alasta:

Ilmatieteen laitos: 147332,55 / (1237586,49 – 0) = 0,119
Mannerheimintie 1: 2279067,75 / (27308189,33 – 7360203,73) = 0,114
Vallila: 2324743,47 / (30265091,38 – 4700377,86) = 0,091
  • Huomaa, että myös yksittäisten saavutettavuusalueiden pinta-alat saa helposti selville info-työkalun avulla (ja valitsemalla oikean saavutusalueen karttatason aktiiviseksi Layers-paneelissa)

Prosentuaalisten viheralueiden peitto-osuuksien laskeminen kannatti, sillä niistä käy ilmi, että vaikka Vallilan alueella on neliömetreinä mitattuna enemmän viheralueita, silti Mannerheimintie 1sen lähistössä on yli kaksi prosenttiyksikköä enemmän viheralueita tarjolla suhteutettuna 15 minuutin pyörämatkan määrittämän saavutettavuusalueen pinta-alaan.

BONUS! Navigoi Plugins → FMI2QGIS → Add WFS Layer ja tarkastele lähes reaaliaikaisesti 20 metrin resoluutioisena Helsingin metropolialueelta saatavilla olevaa ENFUSER ilmanlaatudataa (tarkemmin sanottuna ladataan ilmanlaatua kuvaavan indeksin arvot ja typpioksidikonsentraatiotiedot). Ennen FMI2QGIS-pluginin käyttöä kannattaa navigoida Vector → Geoprocessing Tools → Dissolve ja sulauttaa yhteen Mannerheimintien ja Vallilan saavutettavuusalueet, sillä tästä tuloskarttatasosta saamme kätevästi tutkimusalueen rajat. Jotta pystyisimme silmämääräisesti vertailemaan potentiaalisen uuden asuinpaikan ja nykyisen asuinalueen välisiä ilmanlaatueroja, muokataan myös hieman saavutettavuusalueiden visualisointityylejä.

Saavutettavuusalueiden tyylin muokkaus.
ENFUSER-aineiston lataus.
  • Huomaa, että FMI2QGISin käynnistäminen aktivoi automaattisesti Temporal Controllerin. Tämä on luontevaa, sillä ilmanlaatudata on luonteeltaan paitsi spatiaalista myös temporaalista. Temporal Controller mahdollistaa tilanteen kehittymisen tarkastelun ajan suhteen ja paljastaa mm. merkittävät erot yö- ja päiväajan välillä.
  • Huomaa, että video on kuvattu 23.6.2021 noin klo 13.30, joten ENFUSER-aineisto sisältää paitsi lähihistoriatietoja myös ennustuksen tilanteen kehittymisestä

Yhteenvetona voitaisiin sanoa, että tekemämme analyysin perusteella muuttoa Mannerheimintielle kannattaisi harkita. Mannerheimintien saavutettavuusalue sisälsi prosentuaalisesti Vallilan saavutettavuusaluetta enemmän puistoja ja urheilu- ja virkistysalueita. Lisäksi silmämääräisesti arvioituna siellä saattaisi olla hieman parempi ilmanlaatu. Jälkimmäinen väite perustuu siihen, että viimeisimmästä videosta käy selkeästi ilmi miten ilmanlaatu on heikoimmillaan isojen teiden läheisyydessä; ja Vallilan saavutettavuusalue näyttäisi sisältävän enemmän tällaisia valtaväyliä. Mikäli tälle havainnolle haluaa saada validaatiota, voi harkita tieaineiston lataamista NLS GeoPackage Downloaderilla ja jatkaa analysointia omin päin!

Pauliina Mäkinen on sovelletun matematiikan FM, joka nauttii spatiaalisten ilmiöiden mallintamisesta ja niihin liittyvien ongelmien ratkaisemisesta niin avoimen lähdekoodin paikkatieto-ohjelmistojen, koneoppimisen kuin matemaattisen optimoinninkin keinoin. Vapaa-aikansa Pauliina kuluttaa jalkapallokentillä joko erotuomarin tai pelaajan roolissa.