”Avoin lähdekoodi” tuntuu sanaparina monelle vieraalta ja abstraktilta – mitä avoin lähdekoodi loppujen lopuksi oikein tarkoittaa? 

Tartutaan ensiksi ”lähdekoodi”-termiin. Jokainen ohjelmisto rakentuu koodista, johon ohjelmiston ulkoasu ja toiminnallisuudet perustuvat. Tämä on ohjelmiston lähdekoodi – koodi, josta koko ohjelmisto on lähtöisin. Pekka Sarkolan vertausta lainatakseni, lähdekoodi on ikään kuin resepti, jolla leivotaan tietynlainen kakku (ohjelmisto). 

Vilkaistaan seuraavaksi sanaa ”avoin”. Jos käytetään edelleen vertausta, jossa koodi nähdään kakkureseptinä, avoimuus tarkoittaa, että voit vapaasti saada reseptin itsellesi, levittää sitä ja muokata sitä tarpeidesi mukaan. Pähkinänkuoressa siis sanapari ”avoin lähdekoodi” tarkoittaa sitä, että saat ohjelmiston lähdekoodin (ja itse ohjelmiston) vapaasti käyttöösi, sinulla on vapaus levittää sitä sekä muokata ohjelmiston lähdekoodia oman tahtosi mukaan. 

Käsittelen seuraavaksi yleisimpiä kysymyksiä (FAQ) ja ennakkoluuloja, joita kohdistuu avoimen lähdekoodin ohjelmistoihin.

Jos käytän avoimen lähdekoodin ohjelmistoa, pitääkö minun osata koodata?

Ei, sinun ei tarvitse osata koodata pätkääkään käyttääksesi avoimen lähdekoodin ohjelmistoja. Jos ohjelmiston lähdekoodin näpräily itsessään ei kiinnosta, voit hyödyntää avoimen lähdekoodin muita etuja: sitä, että ohjelmisto on vapaasti käytettävissä ja saat vapaasti levittää sitä kaikille, jotka sitä tarvitsevat. Lähdekoodin avoimuus ja sen muokkausmahdollisuudet ovat vain yksi etu muiden joukossa, jotka liittyvät avoimen lähdekoodin ohjelmistoihin. Voit kuitenkin aina itsekin kehittää ohjelmistoa.

Onko avoimen lähdekoodin ohjelmisto oikeasti luotettava?

Avoimet ja etenkin ilmaiset ohjelmistot herättävät aina tiettyjä, osittain aiheellisia, huolia. Yksi merkittävimmistä on ilmaisen ohjelmiston luotettavuus – voinko luottaa ohjelmistoon, josta en ole maksanut hyrrän pyörylää eikä minulla täten ole kuluttajan oikeutta vaatia ohjelmistolta oikeastaan juuri mitään? Ensimmäiseksi kannattaa muistaa se, että kun lataat ilmaisen avoimen lähdekoodin ohjelmiston, saat ohjelmiston reseptin, eli lähdekoodin, ohjelmiston mukana. Sinulla on siis aina resepti kakkuun, eikä kukaan vie sitä sinulta pois. Jos leipuri, joka on laatinut ja kehittänyt reseptiä, lopettaa toimintansa, sinulla on aina oma kappaleesi reseptistä. Halutessasi voit itse jatkossa kehittää reseptiä, jatkaa käyttöä sellaisenaan tai viedä reseptin toiselle leipurille kehitettäväksi. Tässä on se hopeareunus, mikä sinulla tulee aina olemaan, vaikka kehittäjät pakkaisivat laukkunsa ja vaeltaisivat etelään. 

Yllä mainittua dystooppista skenaariota voidaan kuitenkin arvioida ennalta kohdistamalla katse ohjelmiston yhteisöön. Yhteisöä voidaan pitää avoimen lähdekoodin merkittävimpänä luotettavuuden mittarina: mikäli ohjelmistolla on vahva ja laaja yhteisö (kehittäjät, käyttäjät…), on ohjelmisto oletettavasti luotettava ja sen tulevaisuus näyttää valoisalta. Sanna Jokela myös muistutteli, että esimerkiksi GitHub-repositoriosta tai ohjelmiston omilta kotisivuilta voi tarkastella ohjelmiston yhteisön ominaisuuksia, kuten kehittäjien ja viimeaikaisten kontribuutioiden määrää. On vähintäänkin yhtä todennäköistä, että maksullisen ja suljetun lähdekoodin ohjelmiston tuottajat ja kehittäjät lopettavat toimintansa, kuin vankan yhteisön omaavan avoimen lähdekoodin ohjelmiston tuottajat ja kehittäjät. Tässä kohtaa kannattaa jälleen muistaa, että avoimen lähdekoodin yhteisöllä tulee aina olemaan ohjelmiston resepti – suljetun koodin ohjelmiston yhteisöllä ei. Gispon tukemilla avoimen lähdekoodin ohjelmistoilla (QGIS, PostGIS, GeoServer…) on vahvat yhteisöt, ja ohjelmistot ovat erittäin luotettavia.

Ilmainen ohjelmisto = ilmainen työvoima?

Avoimen lähdekoodin ohjelmistoja kutsutaan myös ilmaisiksi ohjelmistoiksi (FOSS – Free and Open Source Software) – sitähän ne ovat, mutta terminä “ilmainen” voi hieman harhauttaa. Käyttäjälle ilmainen ohjelmisto ei tarkoita sitä, etteivätkö ohjelmiston kehittäjät saisi korvausta tekemästään työstä. Yleensä edellä mainitsemani yhteisö, kuten ohjelmistoa käyttävät yksilöt tai organisaatiot, tukevat rahallisesti ohjelmiston kehitysprojekteja: kehittämistä tuetaan esimerkiksi joukkorahoituksin tai hankkimalla kehitystyö suoraan osaavilta kehittäjiltä. Monesti kehittäjät ovat myös itse lahjoittajayritysten työntekijöitä. Toki on olemassa myös käyttäjiä, kehittäjiä tai jotain siltä väliltä, jotka ovat motivoituneita kehittämään ohjelmistoa vain omaksi (ja epäsuorasti myös muiden) iloksi.

Kannatta myös muistaa, että ohjelmistojen käyttöön on saatavilla usein tuki- ja koulutuspalveluita eri tuottajilta.

Hemmottele aivonystyröitäsi:

https://www.osgeo.org/community/welcome/

https://opensource.org/

https://github.com/

https://www.qgis.org/fi/site/getinvolved/index.html

https://postgis.net/development/

http://geoserver.org/comm/

Olen postaillut verkkoon paljon kartta-animaatioita viimeisten vuosien aikana ja myös kirjoittanut muutaman blogikirjoituksenkin niiden tekemisestä. 

Suurin osa animaatioista on tehty erinomaisella QGISin Time Manager lisäosalla. Time Manager on monella tapaa erinomainen pieni työkalu, mutta varsinaisen animaation ulkoasun ja yksityiskohtien muokkaamiset ovat hieman rajoittuneita. Esimerkiksi resoluutio on riippuvainen QGISin ruudun resoluutiosta eikä QGISin Print Layoutin kaikkia ominaisuuksia ulkoasun hienosäädön suhteen pääse hyödyntämään. 

Keväällä sain idean uudenlaisesta lähestymistavasta kartta-animaatioihin. Näin Twitterissä animaation, jossa “kamera” seuraa kohdetta. Kyseinen animaatio oli tehty käyttäen R-ohjelmointikieltä ja sen gganimate pakettia. Aloin miettimään voisiko saman tehdä QGISillä ja selvisikin että kyllä voi!

Mikä QGIS Atlas?

Atlas on toiminnallisuus QGIS Print Layoutin sisällä, joka lyhyesti sanottuna mahdollista kartantuotannon automoinnin. Tämä tarkoittaa monia asioita, mutta tyypillinen käyttötapaus voisi olla esimerkiksi tarve tuottaa hallinnollisten alueiden kohdalta samanlainen kartta. Jos esimerkiksi Suomesta pitäisi tuottaa jokaisesta 311:sta kunnasta samanlainen väestökartta, vaihtoehdot olisivat joko palkata maantieteen opiskelija kesätöihin tuottamaan niitä karttoja tai tehdä se QGIS Atlaksen avulla. Atlas siis voi iteroida jokaisen siihen lisätyn tason rivin ja luo siitä kartan. 

Valmista videota Atlas ei siis tuota, mutta kuvia joita voi myöhemmin muuttaa videoksi. Lisää Atlaksesta voit lukea virallisesta dokumentaatiosta

Tyypillisesti Atlas on siis tarkoitettu raporttien tekoon, mutta se taipuu moneen muuhunkin. Tällainen “liikkuvan kameran animaatio” tuskin oli alkuperäisten ideoiden joukossa kun Atlasta on kehitetty, mutta omasta mielestäni kiinnostavimmat jutut löytyvät usein kokeellisista jutuista, joissa työkaluja käytetään uudella tavalla. Eli ei muuta kuin vasaroimaan kirveellä!

Dataa animaatioon

Animaation tekemiseen tarvitset tietenkin dataa

Liikkuvan aineiston suhteen on periaatteessa kaksi vaihtoehtoa. Ensimmäinen ja helpoin vaihtoehto on, että sinulla on pisteitä jotka kuvaavat liikkumisen pisteitä tiettynä ajanhetkenä. Datan pitäisi sisältää aikaleimoja tai ainakin joku tieto pisteiden järjestyksestä. Tämä voi olla dataa aktiivisuusrannekkeestasi, ajoneuvojen sijainteja tai jotain aivan muuta, kuten vaikkapa lintujen reittejä Movebank.org -sivustolta. Toinen vaihtoehto on, että sinulla on viivamuotoista paikkatietoaineistoa, jonka varrelle interpoloit pisteitä. Pisteet viivalle voi luoda QGISin sisällä helposti (Vector processing → Points along geometry). Pisteiden määrä riippuu täysin omista tarpeistasi. Animaatiosi voi olla 2 kuvaa tai 200 000 kuvaa. Kokeilumielessä voit myös luoda uuden väliaikaisen viivatason, jolle luot pisteitä.

QGIS

Tarvitset myös taustakartan, koska muuten et huomaa pisteidesi liikkuvan lainkaan. Yksinkertaisinta on käyttää suoraan OpenStreetMap -karttatasoa joka löytyy QGISistä XYZ Tilesien alta. Toinen vaihtoehto on oma WMS-taso, ilmakuva tai vaikka joku oma vektoriaineistosi.

Kuvista animaatioksi Atlaksen avulla

Kun olet saanut pisteet ja datan kuntoon, voit avata uuden Print Layoutin QGISin projektien alta ja lisätä uuden kartan taustan päälle. Säädä taustan muoto ja koko omien tarpeidesi mukaan.

Ensin valikossa ruudun vasemmassa laidassa etene Atlas-välilehdelle ja klikkaa ruutu jossa lukee Generate an Atlas. Tämän jälkeen valitse taso (coverage layer) alasvetovalikosta ja uniikit arvot kohtaan Page name.

QGIS

Tämän jälkeen mene Item properties -välilehdelle ruudun oikeassa laidassa ja valitse keltaisella merkityt kohdat alla näkyvässä kuvakaappauksessa (ruutu jossa lukee Controlled by atlas ja maapalloikoni ruudun ylälaidassa).

QGIS

Tämän jälkeen kun painat sinistä nuolta ruudun ylälaidassa oikealle muutamaan kertaan (ja jos kaikki on mennyt kuten pitääkin) sinun pitäisi nähdä kuinka kartta liikkuu pisteidesi mukaan. Nämä ovat siis elokuvasi ensinäkymät!

QGIS

Jos haluat että kartalla näkyy ainoastaan yksi piste kerrallaan, siirry takaisin QGISin pääikkunaan Print Layoutista. Avaa atlas tason properties-valikko ja valitse tason symboleiksi rule-based symbology. Sieltä avaat tason suodatuksen (filter) ja pääset asettamaan säännön jonka mukaan elementit näkyvät kartalla. Expression String Builderiin asetat distance ominaisuuden vastaamaan Atlaksen sivunimeä. Voit myös toteuttaa tämän lausekkeella $id = @atlas_featureid. Kuulostaa ehkä monimutkaiselta, mutta olennaiset askeleet näkyvät alla kuvakaappauksessa.

QGIS

Tämän jälkeen painelet OK muutamaan kertaan ja suurin osa pisteistä häviää kartalta. Nyt mene takaisin Print Layouttiin ja klikkaile taas sinistä nuolta ja nyt sinun pitäisi nähdä vain yksi piste kerrallaan.

Tämän jälkeen kaikki on kiinni omista visualisointitaidoistasi ja siitä mitä haluat tehdä tyylien kanssa. Ole luova ja lisää vaikka toinen karttaikkuna mukaan tai muokkaa symbolit dynaamiseksi nopeuden mukaan!

Kun olet tyytyväinen lopputulokseen, voit tallentaa kaikki animaation kuvat kuvamuotoon Export Atlas -napista, joka löytyy ruudun ylälaidasta. Tämän jälkeen vain odotat renderöinnin valmistumista.

Videon luominen FFmpegilla

Nyt sinulla pitäisi olla kansio täynnä karttakuvia. 

Lyhyen gif-animaation voi helposti luoda verkossa tai vaikkapa avoimen lähdekoodin kuvankäsittelyohjelma GIMPillä. Kun yksittäisiä kuvia alkaa olemaan enemmän (omana ohjeena yli 200) kannattaa tarkastella muita työkaluja.

FFmpeg on avoimen lähdekoodin komentorivityökalu, jonka avulla voi luoda tehdä hyvin monipuolisia operaatioita videotiedostoille ja esimerkiksi luoda kuvatiedostoista videon. Ajoin Windowsin PowerShellillä seuraavan komennon:

D:\temp_pics\atlas_demo> C:\gis\software\ffmpeg\bin\ffmpeg.exe -r 25 -f image2 -i frame_%05d.png -crf 25 -c:v libx264 -pix_

Komennossa näkyvä -r parametri määrittää videon frameraten, eli nopeuden. Käytän tässä hyvin korkeata numeroa, koska animaatiossa on yli 3000 yksittäistä kuvaa. -f on tiedostoformaatti jota luetaan, -i määrittää luettavan tiedosto nimen muodon. (esim. Kuva_00012.png). On hyvä huomata, että FFmepg haluaa nimien olevan yhtä pitkiä!

Lopuista parametreista -crf määrittää pakkausmuodon, -c:v on videon kodekki ja -pix_fmt määrittää pikseliformaatin. Päädyin yllä näkyviin märityksiin muutaman iteraatiokierroksen jälkeen ja ne toimivat minun käyttötapaukseeni. FFmepgin dokumentaation löydät täältä.

Lopputuotteet

Loin muutaman erilaisen animaation testaillessani Atlaksen toiminnallisuutta. Ensimmäinen on noin 3 000 karttakuvaa ja kaksi karttaikkunaa sisältävä animaatio, jossa on Maanmittauslaitoksen WMS-taustakarttataso ja dynaamisesti nopeuden mukaan muuttuva zoomaus. Varsinainen data on Väylän avointa junien kulkuaineistoa, josta on poimittu junan GPS-tiedot Helsingistä Kemijärvelle kulkevasta junasta. 14 tunnin junamatka on tiivistetty tässä kahteen minuuttiin.

Train Tripping with QGIS Atlas from Topi Tjukanov on Vimeo.

Seuraava video lyhyemmästä raidematkasta, jossa HSL:n avoimesta rajapinnasta on poimittu raitiovaunun 4 reitti läpi Helsingin kantakaupungin. 

Kokeilin myös hieman erilaista liikkuvan kameran animaatiota, joka on lähellä minua alunperin inspiroitunutta animaatiota. Tämä lyhyt gif-animaatio näyttää vuodelta 2015 hurrikaani Ritan jäljet, joissa tuulen nopeus näkyy symbolin koossa. Symbolit saa siis näkyviin myös kumulatiivisesti ja Print Layoutin lausekkeilla myös erilaiset datan ominaisuustiedot ruudulle näkyviin. Tässä käytetyt avoimet datat löytyvät Natural EarthiltaEOX:n taustakarttatasoista ja varsinainen hurrikaanidatan lähde on NOAA.

QGIS

Yksi loistava resurssi Atlaksen opetteluun on Alasdair Raen kotisivu, jossa hänellä on paljon esimerkkejä ja tutoriaaleja. Itse olen kirjoittanut tämän saman blogin myös englanniksi ja myös tutoriaalin QGIS Time Managerin käyttöön

Mukavaa kesää ja hauskoja hetkiä kartta-animaatioiden parissa!

En tiedä kuinka moni on joskus paikkatietourallaan tuskaillut Maastotietokannan karttalehtien kanssa. Jos tarpeena on käyttää Maastotietokantaa esimerkiksi taustakartan tavoin tai tehtävänä on valita tietty taso useamman karttalehden alueelta sekä yhdistää ja visualisoida ne, homma on aika työlästä. Itse ainakin olen vastaavaa työtä askarrellut muutamaan otteeseen.

Mitä jos siihen olisikin kätevä työkalu olemassa? Ilman askartelua. Ilman tuskailua. Valmiilla visualisoinneilla, jotka vastaavat Maastotietokannan visualisointeja. Ja vieläpä ihan ilmaiseksi? 

Uskomatonta? Mutta totta.

Gispo toteutti alkuvuodesta 2019 ensin testin, voisiko Maastotietokantaa ylipäätään visualisoida QGISllä nätisti, ja koska meidän kaikkien mielestä homma oli niin hauskaa ja järkevää, päätettiin sitten rakentaa työtä helpottamaan ihan työkalukin. 

Mikael koodasi ja Salla visualisoi ja lopputuloksena on upea, helppokäyttöinen ja varmasti moneen tarpeeseen tuleva QGIS-lisäosa, jonka saat omaan käyttöösi tätä kautta. 

QGIS

Työkalu hakee ensin halutulta alueelta halutut Maastotietokannan karttatasot MML:n ATOM-syötteestä, yhdistää ne GeoPackage-tiedostoformaattiin, ja samalla tasot visualisoidaan. Työssä käytettiin vain vektorisymboleita, joten työkalun käytön ei pitäisi tökätä omien fonttien tai symboleiden puutteeseen. 

QGIS
Kuva 1. QGIS-lisäosa ladataan QGISiin ja sen kautta voidaan tuoda halutulta alueelta Maastotietokanta visualisointeineen Maanmittauslaitoksen ATOM-syötteen avulla. Tasot listautuvat numerojärjestyksessä työtilaan. Vain tärkeimmät tasot on tässä vaiheessa valmiiksi visualisoitu.

Työkalu on testivaiheessa ja voi olla, että se kehittyy tässä vielä. Kannattaa ensin testata pienemmällä alueella, vaikkapa yhden kunnan tai muutaman karttalehden alueelta, sillä Maastotietokanta on aika iso paketti käsitellä. Tulokset järjestetään numeroinnin avulla visualisoitaviin tasoihin, joten kannattaa ensin tuottaa GeoPackage-aineisto työkalun avulla ja avata se QGIS-työtilaan suoraan tallennuspaikasta.

Suurimmaksi osaksi visualisoinnit näyttäisivät toistavan aika hyvin peruskarttalehtien visualisointeja, mutta jos jotain erikoistapauksia löytyy, niistä voi aina vinkata meille. Visualisoinnit perustuvat Maastotietokannan aineistojen kohdeluokkiin. Testiaineistona meillä oli Hangon alue, joten jos jotain Maastotietokannan kohteita ei siellä sattumalta ole esiintynyt, voi olla, että niitä ei ole huomattu ottaa mukaan lopputulokseen. Kaikki tasot saa kuitenkin erikseen myös haettua työkalun avulla GeoPackage-pakettiin, ja niiden visualisointeja voi myös itse viilailla. 

Mitä mieltä olet, auttaisiko tällainen työkalu sinua työssäsi?

QGIS
Kuva 2. Kuvankaappaus Peruskartta-aineistosta Maanmittauslaitoksen asiointipalvelusta (Maanmittauslaitos 2019).
QGIS
Kuva 3. Sama alue maastotietokanta-aineistosta visualisoituna QGIS-lisäosan avulla.

Loppuvuodesta 2018 Geologian tutkimuskeskus (GTK)  pyysi Gispoa mukaan hankkeeseen, jossa kehitetään kaivosrekisteriä ja geologisen tiedon hallintaa Ruandassa. Asiakkaana on Rwanda Mines, Petroleum and Gas Board (RMB) yhdessä Sustainable Development of Mining in Rwanda:n (SDMR) kanssa. Hanke rahoitetaan Yhdistyneiden Kuningaskuntien kehitysyhteistövaroin. Gispon rooli projektissa liittyy erityisesti tietojärjestelmien käytön kehittämiseen ja kouluttamiseen. Projektin reunaehtona oli avoimen lähdekoodin paikkatieto- ohjelmistojen hyödyntäminen, joten QGIS, PostGIS ynnä muut open source-ohjelmistot valittiinkin toteutusalustaksi. Oli siis lähdettävä päiväntasaajalle, Ruandan pääkaupunkiin Kigaliin, kouluttamaan RMB:n henkilökuntaa QGISin käyttöön!

Ensimmäisen vaiheen koulutukset toteutettiin toukokuussa. Lähdin matkaan projektin vetäjän, GTK:n Niina Ahtosen kanssa. Niina oli käynyt projektin tiimoilta Kigalissa jo kahdesti aiemminkin, joten saatoin luottaa paikallisoppaan apuun. Malarialääkkeet, muovipussikiellot ja muut kohdemaan merkillisyydet oli käyty moneen kertaan läpi. Pitkän lennon jälkeen Kigali osoittautui miellyttäväksi yllätykseksi: kaupunki on siisti, taksi oli meitä odottamassa kuten sovittiin, ja lämpö tietenkin helli suomalaisia luitamme.

Ensimmäisenä päivänä esittelin koulutussuunnitelmani RMB:n henkilökunnalle. Kävimme myös teknillisen yliopiston IPRC:n tiloissa asentamassa QGISin valmiiksi koulutuskoneille. Vanhan teekkarin silmissä kampuksen punatiilinen arkkitehtuuri näytti ilahduttavan tutulta. Seuraavana aamuna alkoivat sitten tositoimet: lähes kolmekymmentä RMB:n ja SDMR:n henkilökuntaan sekä IPRC:n opiskelijoihin kuuluvaa odottivat uteliaina, mitä suomalaiset oikein aikovat.

QGIS

Koulutus oli jaettu kahteen osioon: kaksipäiväinen “Introduction to GIS and QGIS” oli suunnattu niille, joilla ei ollut aiempaa kokemusta paikkatietojärjestelmistä, ja seuraavien päivien “Advanced GIS” meni sitten jo syvemmälle mm. georeferoinnin maailmaan. Yksi suuri osa projektia on nimittäin vanhojen geologisten karttojen kaivaminen arkistosta, skannaaminen, georeferointi ja digitointi. Koulutus oli yliopistolla organisoitu hienosti. Koko porukalle oli järjestetty lounas kampuksen ruokalassa, ja söimme tyytyväisenä keittobanaania, kassavamuhennosta, eri värisiä bataatteja ja muita paikallisia arkiruokia.

Koulutusviikon aikana yllätyimme positiivisesti kurssilaisten innostuksesta ja oppimiskyvystä, kirjavista taustoista huolimatta. Avoimen lähdekoodin ohjelmiston kyvykkyys, luotettavuus ja helppokäyttöisyys puolestaan tuntui yllättävän vastaanottajat. Viikon lopuksi saimme jakaa hienot todistukset ja antaa neuvoja QGISin asentamiseksi kurssilaisten omille koneille. Kokosimme myös vapaaehtoisista ryhmän innokkaita ja taitavia GIS-mentoreita. Mentoriryhmän on tarkoitus toimia tiiviissä yhteistyössä keskenään sekä GTK:n ja Gispon kanssa, jotta he voivat tukea ja edistää paikkatietojen käyttöä RMB:n sisällä jatkossakin.

QGIS

Koimme tärkeäksi painottaa mentoreille (ja muillekin kurssilaisille), että pitkän koulun penkillä istumisen sijaan he oppivat parhaiten itse tekemällä, kokeilemalla ja toisiltaan kyselemällä. Tällainen ongelmalähtöinen ja itsenäinen opiskelutekniikka saattoi tuntua heistä aluksi vieraalta, mutta teorian ja käytännön yhdistäviä opetusmenetelmiämme kiiteltiin jälkeenpäin.

QGIS

Ja olihan siellä Ruandassa kiireisillä kouluttajillakin viikonloppu! Lauantaina ehdimme tutustua Kigalin kaupunkiin kävellen ja ostoksia tehden (mm. kahvi on Ruandassa huippuhyvää ja kestävästi pienten osuuskuntien tuottamaa). Sunnuntaina heräsimme ennen auringonnousua ja pakkauduimme jeeppiin, joka vei meidät pohjoiseen, Ugandan rajalle, sumuisille vulkaanisille vuorille. Luvattu patikkaretki viidakossa osoittautui melko haastavaksi, koska sadekausi oli muuttanut polut mutavyöryksi. Pääsimme kuitenkin näkemään upeita vuorimaisemia, liaaneja ja muutamia apinoitakin.

QGIS

Koulutusjakson onnistumista mitattiin sekä osallistujien itsearviointikaavakkeilla että loppupalautteilla. Niiden perusteella pystymme suunnittelemaan seuraavan vaiheen koulutukset parhaiten käyttäjiä palveleviksi. Matkalaukkua ei näköjään kannata haudata kovin syvälle vintin uumeniin, koska palaamme näillä näkymin Kigaliin jo syyskuussa. Silloin mukaan lähtee myös Topi, ja tehtävänämme on jatkaa koulutuksia mm. PostGISin käytön ja QGISin jatkokurssien osalta. Stay tuned!

QGIS kehittyy jatkuvasti paitsi lisäosien myös peruskäyttöliittymän uusien toiminnallisuuksien kautta. Mutta mitä uutta QGIS:in on viime aikoina tullut?

Katsotaanpa läpi muutama hyödyllinen toiminnallisuus, joka on saattanut jäädä huomaamatta. Nämä uudistukset ovat pienehköjä, mutta voivat nopeuttaa työskentelyäsi huomattavasti! Osa on ollut käytössä QGIS 3.0 -versiosta asti. Kannattaakin päivittää uuteen QGIS 3.4 -versioon, varsinkin jos käytössäsi on vielä vaikkapa QGIS 2.18.

Tyylisuosikkien asettaminen

Jos käytät usein samoja tyylejä pisteille, viivoille ja alueille, voit asettaa ne suosikeiksi. Näin kuvaustekniikkaa säätäessä halutut tyylit ovat monta klikkausta lähempänä, eikä aika valu turhaan etsimiseen.

Suosikkeja pääsee asettamaan klikkaamalla Asetukset > Tyylien hallinta. Vasemmalla ylimpänä valikosta löytyy Suosikit. Uusia suosikkeja voi luoda vihreästä plusmerkistä vasemmasta alakulmasta. Olemassa olevia tyylejä voi lisätä suosikeiksi klikkaamalla tyylin päällä hiiren oikealla painikkeella ja valitsemalla Add to Favorites.

QGIS
Tyylisuosikkien lisääminen QGIS:lla

Pisteiden ryhmittely

Useita pistekohteita sisältävää aineistoa käsiteltäessä pisteet saattavat mittakaavaa vaihdeltaessa mennä ikävästi päällekkäin. Point cluster -toiminnolla voit ryhmitellä pisteiden visualisoinnin vaihtuvan kohteiden lukumäärän ilmaiseviin symboleihin, kun mittakaava pienenee.

Ryhmittely tapahtuu avaamalla Tason ominaisuudet -ikkunassa Kuvaustekniikka ja valitsemalla kuvaustavaksi Point cluster. Säädä Etäisyys-kohdasta haluttu säde, jolla kohteet ryhmitellään.

Ensimmäisessä kuvassa näkyy lentokenttäaineisto luokiteltuina pisteinä kuvattuna. Toisessa kuvassa aineisto on visualisoitu ryhmittämällä kohteita. Symboli ilmaisee nyt määritellyllä säteellä sijaitsevien kohteiden lukumäärän ja niiden yhteisen keskipisteen.

QGIS
Lentokenttien sijainnit käyttäjämäärän mukaan luokiteltuna pisteaineistona. Aineisto Natural Earth -palvelusta.
QGIS
Lentokenttien sijainnit pisteitä ryhmitellen visualisoituna

Usean karttanäkymän käyttö samanaikaisesti

QGIS:ssa on mahdollista avata useampi karttanäkymä samanaikaisesti. Tämä ominaisuus on kätevä esimerkiksi muokatessa kohteita, joiden sijaintia haluaa samanaikaisesti tarkastella eri mittakaavatasoilla tai eri taustakarttoja vasten.

Erilaisia karttanäkymiä voi tuottaa valitsemalla ylävalikosta Näytä Uusi karttanäkymä ja asettamalla karttanäkymille eri teemoja. Uusi teema luodaan säätämällä sopivat asetukset pääkarttanäkymään ja valitsemalla tasovalikon yläreunasta Hallitse karttateemoja Lisää teema. Tämän jälkeen muille karttanäkymille voi asettaa luodun teeman klikkaamalla näkymän yläreunasta Aseta näkymän teema.

QGIS
Uuden teeman lisääminen QGIS-projektiin.

Karttanäkymän voi jokaisen näkymän omista asetuksista asettaa synkronoitumaan pääkartan mukaan, jolloin näkymillä on aina sama keskipiste. Näkymälle voi asettaa myös halutun mittakaavan ja koordinaattijärjestelmän.

Näin saat luotua projektin, jossa hyödynnetään useampaa karttanäkymää. QGIS 3.4 mahdollistaa myös 3D-karttanäkymän lisäämisen!

QGIS
Useampaa karttanäkymää hyödyntävä QGIS-projekti

Pisteaineiston visualisointi näppärästi sarakkeen arvon mukaan

Seuraava ominaisuus on varsin kätevä, kun haluat esimerkiksi saada käsityksen pistemäisten kohteiden suhteesta toisiinsa attribuuttitaulukossa määritellyn sarakkeen lukuarvon perusteella.

QGIS
Helsingin seudulla aloitetut asuntotuotannon kohteet vuosina 2012–2015. Visualisoidaan kohteet näkymään siten, että piste suurenee valmistuneiden asuntojen lkm/kohde kasvaessa. Taustakarttana Helsingin kaupungin kiinsteistökartta HRI-palvelusta.

Aloita valitsemalla Tason tyylit -paneelin kautta kuvaustekniikaksi Yksittäinen symboli. Seuraavaksi klikkaa Koko-kentän oikealla puolella olevaa ikonia, josta aukeaa valikko. Valitse Assistant, jolloin aukeaa Symbolin koko -valikko, jossa voit parilla klikkauksella asettaa tason visualisoinnin perustuvan kohteen saamaan arvoon. Lähde-kentässä voit määrittää, minkä sarakkeen arvojen mukaan kohteet visualisoidaan. Määritä myös raja-arvot kohdissa Arvojen valinta ja Yläraja.

QGIS

Tässä asuntokohteet on visualisoitu valmistuneiden asuntojen lukumäärän mukaan.

Hakutoiminto

Vasemmassa alanurkassa piilee varsin kätevä vaikkakin perinteinen toiminto, nimittäin haku. Haulla löytää nopeasti paitsi toimintoja ja työkaluja myös halutun tason, mikäli tasolistaus on päässyt venähtämään. Hakutyökalu toimii varsin hyvin myös suomen kieliversiossa.

Nyt ottamaan tärpit haltuun!

Lisää vinkkejä QGIS:n käyttöön tulevilla kalenterikursseillamme tai tarpeisiin räätälöidyllä kurssilla milloin haluat! Katso esimerkiksi kurssimme Johdanto QGISin käyttöön, PyQGIS-ohjelmointi ja Visualisoinnin mestariksi QGISillä.

Topi visualisoi upeita karttoja kevään eduskuntavaaleista. Mielenkiintoista, miten kartta voikin olla niin informatiivinen ja upea taide-esitys samaan aikaan! Lisää Topin töitä nähdään blogissa varmasti myös tulevaisuudessa. Sillä aikaa pidä silmällä Twitteriä.

KENELLÄ ON SUURIMMAT YMPYRÄT? JOKAINEN PISTE ON ÄÄNESTYSALUEEN KESKIPISTE JA YMPYRÄT SKAALATTU ABSOLUUTTISEN ÄÄNIMÄÄRÄN MUKAAN.

QGIS

KÄRKIKAHDEKSIKKO ÄÄNESTYSALUEITTAIN. TUMMEMPI VÄRI INDIKOI SUUREMPAA KANNATUSTA.

QGIS

LÄHES PEILIKUVAT KAHDEN EHDOKKAAN KANNATUKSESTA HELSINGIN ALUEELLA

QGIS

ÄÄNESTYSALUEITTAINEN KANNATUS NÄYTTÄÄ HYVIN ERILAISELTA, KUN SE SKAALATAAN KUNTIEN VÄESTÖMÄÄRÄN MUKAISEKSI KARTOGRAMMIKSI.

QGIS

KOKEELLISTA MONIMUUTTUJAVISUALISOINTIA PERUSSUOMALAISTEN JA VIHREIDEN KANNATUKSESVERTAILUSTA.

QGIS

SUOSITUIMMAT PUOLUEET ÄÄNESTYSALUEITTAIN. LÖYSITKÖ JO OMASI?

QGIS

Viherympäristöliitto ry:n vetämänä on käynnissä 2-vuotinen Viheralueiden kunnossapidon laadun arvioinnin kehittämishanke. Hankkeeseen liittyen Viherympäristöliitto teetätti esiselvityksen, jossa olivat mukana Turun kaupunki ja Hämeenlinnan kaupunki. Tavoitteena on digitaalistaa viheralueiden arviointiin liittyvän lomake, jota tähän mennessä oli täytetty taulukkolaskentaohjelmiston avulla tai paperisena. Lomakkeen käytössä oli havaittu myös paljon erilaisia käytänteitä ja tietojen keruu yhteen oli haastavaa.

Arviointityön ohjaus tärkeässä osassa

Helmi-maaliskuun 2019 aikana viheralueiden arvioinnin tarpeita ja prosesseja käytiin läpi Gispo Oy:n toimesta. Määrittelytyön aikana selvisi, että tarpeena oli saada mahdollisimman yleiskäyttöinen työkalu, jonka voisi ottaa käyttöön missä tahansa kaupungissa. Arviointia tekevät niin kaupunkien henkilökunta kuin urakoitsijatkin. Mahdollista on, että arviointityökalua voisivat käyttää myös koululaiset osana lähiympäristöön tutustumista.

Käytännössä työ etenee seuraavasti:

  1. Kunnan viheralueista vastaava henkilö määrittää työkalun avulla arvioitavat kohteet ja ohjeistaa arvioitsijat kohteille esim. automaatisen sähköpostiviestin avulla
  2. Arvioitsijat käyvät läpi sovitut viheralueen kohteet ja tarkastavat niiden kunnon (esim. nurmikon leikkuujälki tai pensaiden kunto) sekä antavat arvion kohteista mobiilisovelluksen avulla
  3. Arvioitsijat antavat sovelluksen avulla kohteille myös arvosanat ja ottavat mahdollisesti kuvia kohteista, jotka tallentuvat kohteen tietoihin
  4. Arvioinnin jälkeen arvioitsijat voivat tarkastella muiden arvioitsijoiden antamia arviointeja kyseisestä kohteesta
  5. Tiedot tallentuvat yhteiseen tietokantaan ja pääkäyttäjä eli kunnan viheralueista vastaava henkilö voi tietojen perusteella määrittää hoitotoimenpiteitä tai tehdä raportteja arvioinneista

Suhteellisen helppo toimenpide, mutta vaatii paikkatietoina puistojen aluerajaustiedot, pääkäyttäjälle työkalun jolla arviontikäyntejä ohjataan sekä kätevän mobiilisovelluksen. Tarpeena oli myös linkittää arvioinnin tulokset myöhemmin itse viheralueen tietoihin kaupungeissa ja koska kunnilla on erilaiset tuotantojärjestelmät, tässä pitää hyödyntää avoimia rajapintoja tai yhdistää tietoa myöhemmin analyysien avulla viheralueeseen hyödyntäen esim. yksilöivää viheralueen tunnusta. Työkalu liittyy läheisesti koko kaupunki-infrastruktuurin ylläpitoon ja arviointiin.

Avoimen lähdekoodin ratkaisut kenttätöiden tekoon

Selvitystyössä ei vielä lähdetty rakentamaan itse mobiilisovellusta tai pääkäyttäjän työtehtävien jakeluun liittyvää välinettä, sillä määrittelyn avulla vasta pystytään arvioimaan työkalun kehitykseen kuluvaa aikaa ja tarvittavia toimenpiteitä. Selvitystyön aikana Gispo kävi läpi myös olemassa olevia arviointityöhön soveltuvia avoimen lähdekoodin ohjelmistokomponentteja, erityisesti mobiilikäyttöön soveltuvia työkaluja. Vaihtoehtoja on useita, joissa paikkatietoelementti on olennaisena osana toteutusta. Tällaisia työkaluja ovat mm. OpenDataKitKoBoToolBox ja QGIS työpöytäohjelmiston kanssa hyvin yhteen toimiva QField. Lisäksi tutustuttiin ehkä pian avoimena lähdekoodina julkaistavaan Divi.io SAAS palveluun, joka yhdistää palveluna kenttätyökalun, työnohjauksen ja tietokantamaailman. Ehkä olemassa on muitakin ratkaisuja, vinkkaa niistä meille!

Lisätietoa projektista antaa

Gispo: Sanna Jokela ja Maiju Rekola
Viherympäristöliitto: Seppo Närhi

3D ja BIM-mallit ovat puhuttaneet paikkatietokansaa jo jonkin aikaa. Ehkä joku on toivonut jopa, että jos se vaan ei koskettaisi minua, niin kaikki menee hyvin. 3D vaan tulee, sille ei voi mitään ja siihen pitää varautua. Se voi olla oikeasti aika hauskaakin! Teemme Maanmittauslaitoksen toimeksiannosta Proof of Concept kokeilua miten avoimen lähdekoodin ohjelmistot käsittelevät 3D maailmaa, työ on vielä aluillaan ja lisää siitä voi lukea Pekka-pomon blogista. Ja pomo taisi luvata että edistyminen raportoidaan avoimesti. Aloitetaan kuitenkin perusteista.

LOD, CityGML ja Mesh

CityGML-malleja on jo muutamia vuosia ollut saatavilla ja ne ovat aika järeitä datasettejä. Sen lisäksi että esim. rakennuksissa voi olla mallinnettuna hyvinkin tarkasti erilaiset ulkonemat, parvekkeet ja kattojen muodot, malliin voidaan lisätä myös fasaadit eli ulkoasu esimerkiksi kuvista kokoamalla. 3D-rakennuksen “kolmedeemäisyys” arvioidaan millä LOD-tasolla kohde on (Level of Detail). Mitä kompleksisempi, sitä korkeampi LOD-taso (lue esim. tämä artikkeli LOD-tasojen määrittelystä). Tähän mennessä suurin osa CityGML aineistoista noudattaa LOD 2-tasoa. Tänne on koottu maailmalta löytyviä CityGML malleja, niitä voi kokeilla ottaa eri työkaluilla käyttöön.

Jos esim. Helsingin aineistoa tuijottelee HRI:n avoimen datan palvelun kautta, vastaan tulee Mesh-termi. Esimerkiksi polygoni mesh tarkoittaa miten tiedostossa mallinnetaan pisteet, viivat ja pinnat, jotta saadaan muodostettua itse 3D-objekti eli polyhedraalinen kohde. Mesh-aineistoja on käytetty esim. ilmatieteessä ja yhden Mesh-aineiston avulla voidaan tutkia esimerkiksi aikaan sidottuja säätila-arvoja. Jos Mesh-asiat kiinnostavat, kannattaa tutustua esimerkiksi Kurt Menkelin QGIS User Conferensissa vetämään visualisointityöpajaan ja sen aineistoihin. Kaupunkimallin puolella Mesh tarkoittaa itse rakennuksen tietomallia ja sitä miten rakennuksesta voidaan muodostaa 3D-objekti.

Helsingin CityGML:n osalta rakennusten vieminen QGIS:iin ei ole ihan suoraviivaista. GML-malli pitää viedä GeoJsoniksi tai PostGISiin ogr2ogr työkalua hyödyntäen (Huom! muunna tällöin kohdegeometria, -nlt MULTIPOLYGON). Meidän visualisointigurumme Topi teki heti kuitenkin ohjeet saatuaan kokeiluja aineistolla ja hyödynsi makeaa varjostuskriptiä visualisoinnissaan. Aika hieno vai mitä?

QGIS

Blenderi surisemaan ja QGIS soimaan

Avoimen lähdekoodin puolella Blender-ohjelmisto on 3D-puolen kunkku. Se on tehty 3D animaatioiden tuotantoon, joten se on aika järeää settiä. Blender ymmärtää myös paikkatietoja, joten 3D objekteja voi heitellä maastomallin päälle ja pyöritellä niitä siellä. Blenderin oikea työkäyttö vaatii kuitenkin todella paljon osaamista – nappuloita on enemmän kuin QGIS-ohjelmistossa.

Mutta myös QGISn uusimpaan versioon on tullut 3D työkaluja, erityisesti visualisointiin liittyen. Esimerkiksi täältä löytyy hyvät perusohjeet 3D-kohteiden tuomiseen QGISn puolelle ja samoin esimerkki CityGML:n tuonti QGISiin, kyseisessä ohjeessa on myös linkki CityGML-aineistoon joka toimii nätisti QGISssä. Näihin ohjeisiin lisäisimme vielä, että käytä uusinta QGIS-versiota (nyt 3.6.).

Kokeile itse

Ota ensin testiin vain yksi korkeusmallin palanen (sellaisen saa esimerkiksi Maanmittauslaitoksen tiedostopalvelusta ladattua).

QGISn 3D-näkymän saa auki yläpalkista “View” / “Näytä” ja valitse Uusi 3D-karttanäkymä, jossa mallia voi pyöritellä.

QGIS

Määrittele 3D-näkymälle mitä aineistoa käytät korkeusmallina ja säädä haluttaessa parametrejä. Esim. pystymittakaavaa säätämällä saa Suomeenkin jylhiä vuoria.  Jos haluat, laita vaikka ilmakuva pohjalle ja määritä korkeusmalli näkymättömiin.

QGIS

Odottele hetki, että tiilet rakentuvat ja määritä mitä asioita 3D-näkymässä näytetään.

QGIS

Jos käytössäsi on rakennusmalli, jossa on Z-koordinaattitietona korkeus, lisää se mukaan projektiin (tai luo sellainen itse). Visualisoinnissa kannattaa käyttää tällöin 3D näkymää ja määritellä, että korkeaustieto lasketaan oikeasta sarakkeesta. Kätevä työkalu on myös Vertice editor (Piste-editori), jolla saa kohteiden x,y,z-koordinaatit näkyville (ja myös editoitua niitä).

The Sustainable Development of Mining in Rwanda (SDMR) on Ison-Britannian rahoittama ohjelma, jonka tavoitteena on kehittää Ruandan kaivosteollisuutta kestävällä ja taloudellisesti kannattavalla tavalla.  Yhtenä pyrkimyksenä on lisätä yksityisen sektorin investointeja maahan.

SDMR:n alainen projekti GIMCS (Geological information Management and Mining Cadastre System) geologisen tiedonhallinnan ja jakelun sekä kaivosrekisterin kehittämiseksi  käynnistyi helmikuussa 2019. GIMCS-järjestelmän teknisessä toteutuksessa hyödynnetään paikkatietojärjestelmän osalta avoimen lähdekoodin paikkatieto-ohjelmistoratkaisuja. Toteutus tehdään Ruandan kaivos, öljy- ja kaasutoiminnasta vastaavalle RMB:lle (Rwanda Mines, Petroleum and Gas Board).

Merkittävä osa projektia on nk. capacity building tarkoittaen sitä, että RMB:n henkilöstöä koulutetaan ja osallistetaan runsaasti mukaan projektin eri vaiheisiin, jotta paikallinen osaaminen kehittyisi ja järjestelmän ja tiedonhallinnan ylläpito ja kehittäminen sujuisivat jatkossa pääasiassa paikallisin voimin.

Mukana kaksivuotisessa projektissa  ovat Geologian tutkimuskeskus (GTK), British Geological Survey (BGS), Turvallisuus- ja kemikaalivirasto (TUKES) sekä Gispo Oy. Gispo vastaa mm. avoimen lähdekoodin paikkatieto-ohjelmistojen koulutusten tuottamisesta hankkeessa.

Lisätietoa hankkeesta antaa Pekka Sarkola (Gispo Oy) ja Niina Ahtonen, GTK, niina.ahtonen@gtk.fi, 0400-947118

Seuraa myös @rwandaSDMR Twitterissä!

QGIS
QGIS

Oletko päkerrellyt hienoja karttoja ja haluaisit päästä myös julkaisemaan niitä muiden nähtäväksi? Se onnistuu helposti GeoServerin avulla!

Julkaistaksesi tekemiäsi karttoja selaimessa ja karttapalvelussa luettavaksi tarvitset palvelimen, joka juttelee selaimen ja tietokannan välillä ja näin mahdollistaa rajapinnan. GeoServer on tällainen työkalu eli palvelinohjelmisto. Se mahdollistaa paitsi tiedon jakamisen myös sen käsittelyn, muokkauksen ja hallinnoinnin. Jos ajattelet tuottamiasi karttoja merikontteina, jotka haluat saada jaeltua maailmalle, toimittaa GeoServer vakaan rahtilaivan tehtävää.

GeoServer on erikoistunut paikkatiedon jakamiseen avoimia paikkatietoalan standardeja määrittelevän OGC-yhteisön normien mukaisesti ja GNU GPL -lisenssin alaisena. Tämä tarkoittaa, että kyseessä on avoimen lähdekoodin ohjelmisto, jolloin kuka tahansa voi ilmaiseksi ja ilman lisenssimaksuja käyttää ja kehittää sitä. Verrattuna muihin avoimen lähdekoodin palvelinohjelmistoihin GeoServerillä on takanaan erittäin aktiviinen paikkatietoyhteisön tuki. Tämä takaa vilkkaan foorumin ja hyvän dokumentaation sekä päivitykset puolen vuoden välein.

GeoServer on Java-pohjainen, ja sen hallinta toteutetaan käyttöliittymän avulla helppokäyttöisesti selaimen kautta. Ohjelmisto toimii monissa käyttöympäristöissä Windowsista Linuxiin ja Maciin, ja skriptaaminen onnistuu muun muassa JavaScriptillä ja Pythonilla. GeoServer tukee useimpia avoimen standardin jakeluprotokollia (WFS, WMS, WCS, WMS-T, WPS).

Mahdollistaa monipuolisen aineistojen hallinnan

GeoServeriin voi tallettaa tiedostoja, mutta se ei ole varsinainen tietokanta. Jos dataa on paljon, kannattaa sen talletukseen käyttää GeoServerin rinnalla esimerkiksi paikkatietoaineistoille sopivaa PostGIS-tietokantaa, johon GeoServer tarjoaa sisäisen tuen.

GeoServerissä aineistoa on myös mahdollista muokata. Voit luoda kokonaan uusia visualisointityylejä, muokata niitä valmiista malleista tai ladata esimerkiksi QGIS-ohjelmalla luotuja SLD-tiedostoja. Jos CSS-kieli on visualisoinnissa tutumpaa, myös sille on saatavilla lisäosa. Karttojen esikatselu on helppoa OpenLayers-linkin kautta.

Käyttöoikeuksien ja rajapintojen näkyvyyden säätely on GeoServerillä helppoa. Voit luoda erilaisia rooleja, joille määritellään käyttöoikeuksia asetusten ja datojen suhteen. Käyttäjille taas voidaan antaa näitä rooleja tarpeen mukaan. Erilaisten roolien määritteleminen on fiksua, sillä se vähentää tietoturvariskiä ja ohjelmiston tärkeimpien asetusten sekoittamisen vaaraa – kaikilla kun ei yleensä ole tarvetta päästä käsiksi samoihin asetuksiin ja datoihin. Samoin voit määritellä pääsyoikeuksia julkaisemillesi rajapinnoille. Oletuksena rajapinnat ovat avoimesti jaettavissa eli nähtävissä ilman kirjautumista palvelimelle, mutta niille voi asettaa myös rajoituksia.

GeoServerillä saat kartta-aineistoistasi enemmän irti!

Kiinnostuitko hyödyntämään GeoServerin huimia mahdollisuuksia tai tarvitsisit tukea sen käytössä? Tule mukaan GeoServer-kurssillemme!

QGIS
GeoServerin käyttöliittymä