R-ohjelmointi.org
Tilastotieteellistä ohjelmointia R-kielellä
Tilastokeskuksen postinumeroalueittainen avoin tieto ja rCharts
Tilastokeskus on avannut osan postinumeroalueiden tilastoaineistostaan avoimena data nimellä Paavo. Muokkasin aineiston muotoon, jossa esimerkiksi miesten lukumäärästä ja väkiluvusta on laskettu miesten suhteellinen osuus. Aineiston voi ladata tästä .RData-muodossa.
Aineistossa on toista sataa muuttujaa, joiden läpikäyminen voi olla helpointa interaktiivista visualisointia käyttäen. Tällaisen mahdollisuuden tarjoaa R-paketti rCharts. Tehdäänpä aineistosta kaksi kuvaa, yksi pylväskaavio ja yksi hajontakuvio. Lyhyesti sanottuna, seuraava koodi piirtää kuvat, avaa ne selaimeen ja tallentaa vielä erillisiin tiedostoihin:
# Ladataan data load(url("http://koti.mbnet.fi/tuimala/tiedostot/Paavo3_V2.RData")) paavo3<-paavo3[-1,] paavo3[is.na(paavo3)]<-0 # Ladataan kirjasto library(rCharts) # Asetetaan selain options(browser="C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe") # Pylväskaavio n1 <- rPlot(Asukkaatyhteensä2013HE ~ alue, data = paavo3, color="kunta", type="bar") # Lisätään muuttujien valinta x- ja y-akseleille sekä vereille n1$addControls("x", value = "alue", values = names(paavo3)) n1$addControls("y", value = "alue", values = names(paavo3)) n1$addControls("color", value = "kunta", values = names(paavo3)) # Muutetaan kaavion kokoa n1$set(width=1600, height=900) # Avataan kaavio selaimessa print(n1) # Talletetaan kaavio siten, että kaikki tarvittava tulee samaa tiedostoon n1$save('paavo3_V2_bar.html', standalone = TRUE) # Hajontakuvio n2 <- rPlot(Asukkaatyhteensä2013HE ~ alue, data = paavo3, color="kunta", type="point") n2$addControls("x", value = "alue", values = names(paavo3)) n2$addControls("y", value = "alue", values = names(paavo3)) n2$addControls("color", value = "kunta", values = names(paavo3)) n2$set(width=1600, height=900) print(n2) n2$save('paavo3_V2_scatter.html', standalone = TRUE) |
Tuloksena syntyvät seuraavat tiedostot:
Tiedostot avautuvat useampia sekunteja, joten niihin tutustuminen vaatii hieman kärsivällisyyttä. Ruutukaappaus antaa esimakua kaavioista:
Oletusarvoisesti rCharts generoi tiedoston, jonka merkistökoodaus on utf-8. Tämän voi havaita avaamalla syntyvän html-tiedoston. Tiedostosta löytyy seuraava rivi:
Suomalaisasetuksin varustetulla koneella tuotetun kuvan rivin pitäisi kuitenkin olla kuten alla, jotta skandinaaviset merkit näkyisivät kaavioissa oikein:
Toisinaan plottausfunktio tuottaa hieman erilaisen kuvan, vaikka aineisto olisi sama, kuten kaikki kuvan tuottamiseen käytetyt asetuksetkin. En tiedä mistä tämä johtuu, mutta sama ilmiö näkyy, jos saman kaavion avaa useita kertoja yllä olevista linkeistä. Häiritsevää, mutten vielä keksinyt miksi näin käy.
Vastaa