keskiviikko 27. helmikuuta 2013

Euroopan maiden rajat KML-formaatissa

Kun on kertaalleen päässyt vauhtiin ei kannata lopettaa. Eli tässä aikaisempien Suomen kuntarajat 2013 ja Suomen maakuntarajat datojen rinnalle Euroopan maiden rajat KML-formaatissa:
Rajat eivät noudattele kovinkaan tarkasti rantaviivoja, mutta kaikki maat ovat silti helposti tunnistettavissa ja käytettävissä esimerkiksi datajournalistisissa projekteissa. (Kuva 1)

Euroopan maiden rajat KML-formaatissa. (Kuva 1)
Mukana on 45 maan rajat, joka täsmää Wikipedian "Euroopan valtion" -luokassa olevien sivujen lukumäärään kun huomioidaan, että Venäjän rajat puuttuvat tästä datasta.

tiistai 26. helmikuuta 2013

Maakuntarajat KML-formaatissa

Kirjoitin noin viikko sitten kirjoituksen "Suomen kuntarajat 2013 KML-formaatissa". Tässä olisi nyt jatkoa maakuntarajojen näkökulmasta:
Maakuntarajat eivät ole rantaviivaleikattua, joten Suomi piirtyy kartalle hieman tavallista pyöreämpänä (Kuva 1). Tällä ei kuitenkaan datan käsittelyn kannalta ole sinällään merkitystä vaikka toki visuaalisesti kyllä.

Suomen maakuntarajat visualisoituna Google Fusion Tables:ssa. (Kuva 1)
Data pitää sisällään rajojen lisäksi:
  • Maakuntanumeron
  • Maakunnan suomenkielisen nimen
  • Maakunnan ruotsinkielisen nimen
Toivottavasti tästä on jollekin apua.

Disclaimer: en ole varmistanut ovatko maakuntarajat muuttuneet vuoden 2013 kuntaliitosten myötä.

sunnuntai 24. helmikuuta 2013

Datajournalistiset sisällöt

Minulta on usein kysytty kun olen ollut puhumassa datajournalismista, että ovatko Yle:n tekemät datajournalistiset sisällöt löydettävistä jostain kootusti. Tähän asti minulla ei ole ollut antaa hyvää vastausta tuohon kysymykseen, mutta olemme ottaneet asian esille sisäisesti ja meillä on tavoitteena perustaa jonkinlainen säiliö johon laajimmat nettisisällöt olisi jatkossa tarkoitus koota. Toivottavasti saamme jotain tämän suhteen aikaan muutaman viikon sisällä. Siihen asti löydät kaikki jutut joissa minä olen ollut mukana kotisivuiltani löytyvästä portfoliosta:
ja kaikki projektit, joiden tekemiseen PlusDesk on osallistunut löytyvät kootusti Google Drivestä:
Listalta löytyy mm. alkuviikolla A-Studio:n kanssa tehty mielenkiintoinen juttu nuorista eläkeläisistä. Ensi viikolla lista täydentyy muutamalla todella mielenkiintoisella sisällöllä ja ne päivittyvät sitä mukaa kun ne julkaistaan tuohon Google Spreadsheet -dokumenttiin.

maanantai 18. helmikuuta 2013

Suomen kuntarajat 2013 KML-formaatissa

Olemme pyörittäneet PlusDesk:ä (eli Yle Uutisten uutta nettisisältöjä tuottavaa toimistusta) nyt muutaman viikon ajan ja olemme tehneet muun muassa useita erilaisia karttoihin perustuvia juttuja ja visualisointeja:
Suomalaisessa kontekstissa karttoihin liittyvä pulma ovat miltein vuosittain muuttuvat kuntarajat. Meille ei ole vielä tullut eteen juttua, jossa meillä olisi ollut vuoden 2013 dataa ja siten tarvetta kyseiselle karttapohjalle, mutta otimme kuitenkin tehtäväksemme muuntaa Maanmittauslaitoksen tarjoama avoin kuntarajadata Google:n tuotteissa käytettyyn .kml-formaattiin. (Kuva 1) 
    Suomen kuntarajat 2013 data pitää rajojen lisäksi sisällään kunnan nimen suomeksi ja ruotsiksi. (Kuva 1)
    Tämä data on nyt tässä kaikkien teidän hyödynnettävissä tästä:
    Muunnoksesta kunnia kuuluu etenkin PlusDesk:n graafikko Juha Rissaselle, joka teki muunnoksen  Quantum GIS -ohjelmistolla näiden ohjeiden avulla. Kuntarajat ovat rantaviivaleikatut ja rantaviivassa esiintyy tiettyä epätarkkuutta johtuen valitusta mittakaavasta. Tässä myös vuosien 2011 ja 2012 kuntarajat samaisessa .kml-formaatissa.
    Vuoden 2011–2012 kuntarajadata ei ole rantaviivaleikattu.

    Toivottavasti näistä on apua.

    ps. SVG-formaatissa Suomen kuntarajat ovat saatavilla ainakin Wikipedia:sta kuitenkin niin, ettei rajoilla ole kuntatietoja. 

    perjantai 1. helmikuuta 2013

    PlusDesk ja elämää hetkessä

    Olen nyt ollut kaksi viikkoa osa Yle Uutisten PlusDesk-toimitusta. PlusDesk on Uutis- ja ajankohtaisorganisaatioon perustettu toimitus, jonka tehtävä on auttaa mm. uutis- ja urheilutoimituksia netin omaisten sisältöjen toteuttamisessa. Ajatuksena on, että PlusDesk yhdessä toimituksien kanssa tuottaa netinomaista sisältöä netin ehdoilla. Tarkoitus ei siis ole, että vastuu nettijuttujen tekemisestä jää pelkästään PlusDesk:n vastuulle.

    Tiimimme kuuluu kaksi tuottajaa (Juho Salminen ja Mika Pippuri), kolme graafikkoa (Juha Rissanen, Stina Tuominen ja kolmas vielä vielä nimeämätön henkilö) sekä yksi toimittaja/datajournalisti eli allekirjoittanut. Toimintamme on orientoitumisviikon jälkeen tällä viikolla pyörähtänyt käyntiin ihan juttujenkin toimesta ja olemmekin ehtineet olemaan mukana yhteensä viiden eri julkaistun jutun teossa. Yhtenä tavoitteenamme on avata prosessejamme mahdollisimman paljon niin sisäisesti kuin talon ulkopuolellekin ja tässä kuvaus eräästä jutusta, jolle oli ominaista etenkin eläminen ajassa.



    Perjantaiaamuna Yle Uutiset uutisoi, että brittiläinen professori Nick Trefethen oli kehittänyt uuden laskukaavan laajalti painonhallinnassa käytetyn painoindeksin laskemiseen. Verrattuna alkuperäiseen uusittu indeksi painottaa hieman eritavalla laskennassa käytettäviä ihmisen pituutta ja painoa. Alkuperäinen Adolphe Quetelet keskimä malli laskee painoindeksin niin, että paino jaetaan pituuden neliöllä:

    paino (kg) / pituus (cm) * pituus (cm)

    Trefethen:n kehittämässä mallissa paino kerrotaan 1,3:lla ja pituus korotetaan potenssiin 2,5. Kaava on siis muotoa:

    1,3 * paino (kg) / pituus (cm) ^2,5

    Toinen tuottajistamme Mika Pippuri keksi puolenpäivän aikaan, että voisimme pikaisesti kyhätä tähän uuteen malliin perustuvan laskentakoneen, jonka avulla lukijat voisivat nopeasti laskea oman "uuden" painoindeksinsä ja verrata sitä vanhaan. (Kuva 1)

    Kuvankaappaus artikkeliin upotetusta painoindeksikoneesta. (Kuva 1)
    Innostuinkin ideasta siinä määrin, että jätin työnalla olleen kiireettömämmän projektin kesken ja lähdin toteuttamaan painoindeksikonetta. Intuitioni oli lähteä toteuttaa HTML-muotoista lomaketta ja sille PHP-käsittelijää, joka nappaisi lomakkeelta lähetetyt tiedot ja palauttaisi käyttäjälle vastauksen. Mika kuitenkin löysi valmiin JavaScript-pohjaisen koodin pätkän painoindeksin laskentaan, joka ohjasi minut toteuttamaan laskurin JavaScript:llä. JavaScript toteutus oli myös lähtökohtaisesti parempi, koska se ei pakottanut käyttäjää lataamaan sivua uudelleen ja oli siten mukavampi käyttää. Jälkikäteen hieman ärsyttää, että lähtökohtani ei ollut JavaScript-pohjainen ratkaisu, mutta tämä pistettäköön perjantain ja erittäin kiireisen viikon piikkiin.

    Tämänkaltaiset erikoistoteutukset viemme Yle Uutisten sivuille ns. ulkoisina upotuksina. Toteutuksien koodit sijoitamme erilliseen ympäristöön käyttämämme Escenic-järjestelmän ulkopuolelle ja tuomme ne Escenic:iin ulkoisena sisältötyyppinä. Ulkoinen sisältötyyppi määrittelee itselleen kolme resurssia:
    • HTML tai PHP resurssi
    • CSS-resurssi(t)
    • JavaScript-resurssi(t)
    Tämä ulkoinen sisältötyyppi on mahdollista liittää normaaliin uutisartikkeeliin samaan tapaan kuin esimerkiksi kuva. Samoja ulkoisia sisältötyyppejä on mahdollista käyttää useaan kertaan, mutta tällä hetkellä ulkoinen sisältö voidaan sijoittaa vain joko artikkelin alkuun tai loppuun. Tällä samalla tekniikalla tuomme järjestelmään myös esimerkiksi Google:n sisällöt kuten kartat (Google Maps) ja lomakkeet (Google Form).

    Toimituksellisesti teimme vielä sellaisen päätöksen, että sijoimme painoindeksikoneen erilliseen artikkeliin sen sijaan, että olisimme päivittäneet sen osaksi aiheesta jo kirjoitettua artikkelia. Näin saimme toteutuksellemme paremman näkyyden, koska saavutimme paremmin myös ne käyttäjät, jotka olivat jo lukeneet alkuperäisen aamulla julkaistun jutun.

    Painoindeksikone nousikin nopeasti sivuston luetuimmaksi jutuksi ja piti paikkansa aina siihen asti kun ehdin poistua toimistolta. Vertailuluku seuraavaksi luetuimpaan juttuun viimeisimmän tunnin aikajaksolla mitattuna oli sen suuntainen, että tämä painoindeksikoneemme oli n. kolme kertaa luetumpi kuin koko yle.fi-domainin seuraavaksi luetuin sivu.

    Selkeimpänä kehitysideana tuli itselleni mieleen, että olisi ollut kätevää ja käyntimäärien kannalta positiivista jos painoindeksikoneen antaman tuloksen olisi voinut jakaa Facebook:ssa ja muissa palveluissa. Koimme kuitenkin, koska kello alkoi lähennellä iltapäivää, että on tärkeämpää saada toteutus vain mahdollisimman nopeasti julki. Seuraavalla kerralla kun prosessit ovat muutenkin suoraviivaistuneet varmaankin otamme myös tämän aspektin huomioon tämänkaltaisissa toteutuksissa.

    Edit: Muokatta Stina Tuomisen nimi oikeaksi ja lisätty linkki JavaScript-koodiin, jonka pohjalta toteutusta lähdettiin tekemään.