Tilastotietoa kartalle
Blogisarjasta
Tiedosta kartta – Sivari avoimen datan pyörteissä on blogisarja, josssa HRI:n siviilipalvelusmies Juho Antikainen kirjoittaa kaikesta avoimeen dataan enemmän tai vähemmän liittyvästä syksyn 2022 ja kevään 2023 aikana.
Tässä blogissa näytän, miten Helsingin seudun avoimen tilastotietokannan eli Aluesarjojen aineistoja voi esittää kartalla avoimen lähdekoodin QGIS-paikkatieto-ohjelmiston avulla. Tavoitteena on antaa selkeät ohjeet Aluesarjojen tilastojen esittämiseen kartalla kaikkien pääkaupunkiseudun kaupunkien osalta.
Aluesarjat-tietokanta koostuu Helsingin seudun kuntien tilastoista aikasarjojen muodossa. Espoon, Helsingin ja Vantaan osalta tietoa on alueittain ja muiden Helsingin seudun kuntien sekä Kauniaisten osalta kunnittain. Tietokannassa on dataa muun muassa väestöstä, koulutustasosta, työmarkkinoista ja asumisesta.
Aluesarjojen aineistoihin pääsee myös tutustumaan karttamuodossa muun muassa ja Helsingin aineistojen osalta Helsingin karttapalvelussa. Jos haluaa tutkia yksittäisiä aineistoja karttamuodossa, paikkatietoikkunassa pystyy tutustumaan aineistoihin ja visualisoimaan niitä. Suosittelisinkin käyttämään näitä helppokäyttöisiä työkaluja, jos mahdollista. Jos taas dataa haluaa itse prosessoida tai yhdistellä ennen visualisointia, niin tämän blogin menetelmä sopii paremmin.
Tämän ohjeen esimerkit ovat pääasiallisesti Espoon ja Vantaan datoista, sillä Helsingin kaupunki on julkaisemassa Helsinki alueittain -paikkatietoaineistoa, johon on koottu Aluesarjoista tilastotietoa. Koska aineisto tulee olemaan saatavilla rajapinnan kautta, sen käyttö on huomattavasti helpompaa kuin tässä blogissa esitelty tapa.
Ohjeen seuraamiseksi riittää QGIS:n sekä Excelin perusteiden tunteminen. Lisäresursseja QGIS:n käyttöavuksi löytyy Helsingin avoimen paikkatiedon oppaassa. Lisää tukea saa QGIS:n virallisesta dokumentaatiosta ja aloittelijan oppaasta (molemmat englanniksi). Ohjelmointitaitoa ei tarvita.
Tässä on vielä työvaiheet tiivistetysti. Työvaiheet käydään läpi yksityiskohtaisemmin myöhemmin blogissa :
- Lataa haluamasi aineisto CSV-muotoisena osoitteesta https://stat.hel.fi/pxweb/fi/Aluesarjat/
- Luo QGIS-ohjelmistolla uusi projekti ja lisää CSV-datan aluetta vastaava kaupungin aluejakodata (varmista, että kaupungin aluejako vastaa datan jaottelua)
- Leikkaa tarvittaessa merialueet pois aluejaosta
- Muokkaa CSV-tiedosto Excelin avulla sopivaan muotoon
- Vie CSV-tiedosto QGIS:iin
- Tee liitos aluejaon ja CSV-tiedoston välille
- Muokkaa visualisointia ja ihaile kaunista karttaasi
Dataa Aluesarjoista ja datan muokkausta
Käytän tässä ohjeessa esimerkkinä korkeakoulutettujen määrää eri kaupunginosissa. Esimerkkinä on Vantaan kaupunginosakohtainen aineisto, mutta ohjeet eivät eroa muiden kaupunkien osalta. Aineisto voidaan ladata CSV-muodossa Aluesarjojen verkkosivujen kautta. Olen tehnyt koonnin käyttämistäni aineistoista Espoon, Vantaan ja Helsingin osalta. Ladattua tiedostoa ei kuitenkaan voida suoraan viedä QGIS:iin vaan sitä pitää hieman muokata Excel-taulukkolaskentaohjelmalla.
Taulukkoon täytyy tehdä kaksi suurempaa muokkausta. Ensinnäkin aluetunnukset tulee erotella osa-alueiden nimistä omiin sarakkeisiinsa, mikä onnistuu Excelin ”Teksti sarakkeeseen” -toiminnolla (Tiedot -> Datatyökalut -> Teksti sarakkeisiin). Kannattaa säilyttää sekä nimet että tunnukset, sillä kaupunkien aluejakojen ominaisuustiedot vaihtelevat hieman.
Excelin omituisuuksia
Kun Aluesarjoista lataa aineistoa, kannattaa kiinnittää huomiota erotinmerkin valintaan, jotta Excel avaa CSV-tiedoston oikein. Jostain syystä Excelin kieliasetukset määrittävät Excelin käyttämän CSV-tiedoston oletuserotinmerkin. Jos käytät englanninkielistä Exceliä, niin valitse erottimeksi pilkku. Jos taas käytät suomenkielistä, niin valitse erottimeksi puolipiste.
Toisekseen aineistossa saattaa olla yksittäisiä datapisteitä, jotka on merkitty ”..”-merkinnällä. Merkintä tarkoittaa sitä, että joko tietoa ei ole saatu, se on liian epävarma tai se on salattu kyseisellä alueella. QGIS ei näitä merkintöjä ymmärrä, vaan ne täytyy poistaa, jolloin QGIS tulkitsee nämä kentät NULL-merkinnällä.
Lisäksi datasta kannattaa siivota mahdolliset tarpeettomat sarakkeet, jos näin ei ole tehnyt jo aineiston lataamisen yhteydessä. Tällöin aineiston käsitteleminen QGIS:in puolella on miellyttävämpää. Alla näkyy esimerkki siivotusta aineistosta.
Kun tarvittava siivoaminen on tehty, on aika viedä aineisto QGIS:iin. Tämä tapahtuu yksinkertaisesti raahaamalla tiedosto QGIS:in karttanäkymän päälle. CSV-tiedoston pitäisi ilmestyä oikean alakulman tasoluetteloon. Ennen taulukon liittämistä aluejakoaineistoon numeromuotoisen datan tyyppi pitää muokata merkkijonosta (eng. string) kokonaisluvuksi (engl. integer), jotta datalla pystyy tarvittaessa tekemään laskentaa. Yksi hyvä tapa muokata eri muuttujien datatyyppiä on käyttää QGIS:in ”Muokkaa skeemaa” -työkalua.
Kaupunginosajako paikkatietona
Aluesarjojen datan lisäksi alueittaisten tilastotiedon esittämiseen kartalla tarvitaan kaupunkien aluejakoa polygoniaineistona, johon tilastotiedot voidaan liittää. Tässä blogissa käytän esimerkkinä pienintä mahdollista aluejakoa, mutta ohjeet ovat samanlaiset muillekin aluejaoille. Helsingiltä käytän osa-alueita, Espoolta pienalueita ja Vantaalta kaupunginosia. Muilla Helsingin seudun kunnilla ja Kauniaisilla Aluesarja-tilastot ovat kunnittain.
Espoon ja Helsingin tapauksissa aluejakoon kuuluvat myös merialueet. Ne jatkuvat aina kansainvälisille aluevesille asti, mikä tekee visualisoinnista hankalammin tulkittavia. Merialueet voidaan leikata pois hyödyntämällä esimerkiksi HSY:n maanpeiteaineiston merialueita ja käyttämällä eroavaisuustyökalua (kuva alla), joka poistaa polygonista kaikki alueet, jotka menevät päällekkäin merialueiden kanssa. Tällöin tuloksena syntyy tutun repaleinen osa Suomenlahden rantaviivaa.
Tilastotiedon ja paikkatietoaineiston yhdistäminen
Tällä hetkellä projektissa pitäisi olla kaupungin aluejako polygoniaineistona ja Aluesarjojen dataa sisältävä CSV-tiedosto. Seuraavaksi liitetään paikkatietoaineisto ja taulukkodata toisiinsa. Tämän pystyy tekemään aluejakotaso -> Ominaisuudet -> Liitos -> Uusi liitos -valikon kautta (kuva alla). Tässä vaiheessa on erityisen tärkeää varmistaa, että liitokseen käytettävät tunnukset tai nimet vastaavat toisiaan, jotta alueen data liittyy yhteen oikean polygonin kanssa.
Kun liitos on tehty, Aluesarjojen aineistojen pitäisi ilmestyä aluejakoaineiston ominaisuustietoihin. Liitoksia voi tehdä samalla tavalla useampiakin. Eli on mahdollista yhdistellä Aluesarjojen eri taulukoista löytyviä aineistoja tällä tavalla toisiinsa ja tehdä niistä mielenkiintoisia analyysejä tai visualisointeja.
Entä Kauniainen?
Aluesarjojen vieminen kartalle poikkeaa Kauniaisten osalta hieman verrattuna muihin pääkaupunkiseudun kaupunkeihin. Tämä johtuu siitä, että Aluesarjoissa ei ole kaupunginosakohtaista tietoa Kauniaisista. Jos Aluesarjojen aineistoa haluaa tuoda kartalle myös Kauniaisten osalta, esimerkiksi seudullisten visualisointien tapauksessa, niin prosessi on hyvin samankaltainen kuin edellä. Kaupungillisen aluejaon sijasta käytetään yhtä yhtenäistä polygonia, joka kattaa koko Kauniaisten alueen. Tämä saadaan esimerkiksi suodattamalla HSY:n seutukartasta Kauniaisten alue omaksi polygonikseen. Sen jälkeen taulukon ja paikkatietoaineiston liitos on samanlainen kuin muidenkin kaupunkien tapauksessa.
Esimerkkikarttoja
Lopuksi esittelen vielä muutaman esimerkkivisualisoinnin Aluesarjojen aineistosta. Kartoissa on kuvattu ylemmän korkeakoulututkinnon suorittaneiden määrää suhteessa alueen aikuisväestöön. Espoon ja Vantaan kartat ovat erilliset ja niiden asteikko on erilainen. Nämä visualisoinnit eivät todellakaan ole ainoita mahdollisia. Suosittelenkin tutustumaan, minkälaisia karttoja Aluesarjojen aineistoista voi tehdäkin. Entä jos Aluesarjojen aineistoihin yhdistää dataa jostain muusta lähteestä?
Alhaiselta kuulostava 15 vuoden ikäraja johtuu siitä, että Aluesarjoissa tämä on alin ikäluokka. Seuraava mahdollinen helposti saatavilla oleva ikäraja olisi ollut 25-vuotta, mutta tämä jättäisi jo esimerkiksi Espoossa 114 korkeakoulutettua alle 25-vuotiasta pois analyysistä. Esimerkiksi ikärajan asettaminen 20 vuoteen olisi varmaan ollut mahdollista, mutta se olisi vaatinut enemmän kikkailua, jota en alkanut tekemään. Nämä visualisoinnit ovat kuitenkin vain esimerkkejä eikä tarkoituksena ollut luoda syväluotaavia analyysejä pääkaupunkisedun kaupunkien koulutustasosta.
Oletusarvoisesti QGIS jättää piirtämättä sellaiset polygonit, joiden arvo on Null. Jos nämä halutaan silti näkyviin, niin aineisto täytyy ensiksi luokitella porrastetulla kuvaustekniikalla. Tämän jälkeen vaihdetaan kuvaustekniikka sääntöpohjaiseksi ja luodaan uusi sääntö, jonka ehdoksi laitetaan ”Else”. Tällöin myös alueet, joista ei ole saatavilla tilastotietoa, tulevat esiin. Yllä olevissa kartoissa alueet, joista puuttuu dataa, on merkitty harmaalla. Lisätietoa tähän saa tarvittaessa tästä ohjeesta (toinen vastaus).
Yhteenvetoa
Tässä ohjeessa näytettiin, miten Helsingin seudun tilastotietokannoista eli Aluesarjoista voi hakea ja käsitellä dataa QGIS-paikkatieto-ohjelmistossa. Lisäksi näytin muutamia esimerkkivisualisointeja eri kaupunkien korkeakoulutettujen osuudesta koko aikuisväestöstä. Loppuun olen vielä koonnut kaikki käyttämäni aineistot ja mahdollisia yleisiä ongelmakohtia.
Seuraavalla kerralla palaan takaisin karttavisualisointien maailmaan, kun tutkin, miten kartta-animaatioilla voi visualisoida kaupunkien rakennuskantojen kehittymistä vuosikymmenten aikana.
Käytetyt aineistot
Aluejaot
- Espoon tilastoaluejako
- Helsingin piirijako
- Vantaan kaupunginosajako
- Kauniainen (Suodata tasosta Seutukartta_aluejako_kuntarajat)
Aluesarjojen poiminnat
Muut aineisto
- Pääkaupunkiseudun Maanpeiteaineisto (Käytetty taso: Maanpeite_merialue_2022)
- Pääkaupunkiseudun yleiskartta (Käytetty taso: Yleiskartta_PKS_32m)