Katsaus visualisointitekniikoihin Pohjautuen artikkeliin: Heer, J., Bostock, M., & Ogievetsky, V. 2010. A Tour through the Visualization Zoo. ACM Queue 8, 5. Saatavissa: http://queue.acm.org/detail.cfm?id=1805128 Hypermedian jatko-opintoseminaari Informaation visualisointi 22.3.2013 Antti Kortemaa TTY/IISLab
Lähtökohtia 1 (4) Yhteiskunta tuottaa digitaalista informaatiota hämmästyttävää tahtia Datatulvan joukossa on runsaasti arvokasta informaatiota Informaation hyödyntämiseksi on löydettävä tapoja datan tutkimiseen, yhdistämiseen ja viestimiseen mielekkäästi 2
Lähtökohtia 2 (4) Visualisoinnin tavoitteena on tukea datan ymmärtämistä tukeutumalla ihmisen näköjärjestelmän kehittyneeseen kykyyn nähdä hahmoja, havaita kehityssuuntia ja tunnistaa poikkeamia Hyvin suunnitellut visuaaliset esitystavat voivat korvata kognitiivisen laskennan yksinkertaisilla havaintokykyyn perustuvilla johtopäätöksillä ja kehittää ymmärrystä, muistia ja päätöksentekoa Tekemällä datan saavutettavammaksi ja houkuttelevammaksi visuaaliset esitystavat voivat myös auttaa monipuolisempia yleisöjä osallistumaan tutkimiseen ja analysointiin Haasteena on luoda datalle sopivia tehokkaita ja kiinnostavia visualisointeja 3
Lähtökohtia 3 (4) Visualisoinnin luomiseksi on päätettävä, mitä halutaan kysyä, tunnistettava sopiva data sekä valittava tehokas visuaalinen koodaus (visual encoding) datan arvojen kuvaamiseksi graafisiksi ominaisuuksiksi Haaste: mille tahansa joukolle dataa koodauksessa on vaihtoehtoja valtavan suuri määrä Tietojenkäsittelyopissa, psykologiassa ja tilastotieteessä on tutkittu, miten hyvin erilaiset koodaukset edistävät datatyyppien ymmärrystä 4
Lähtökohtia 4 (4) Artikkeli tarjoaa lyhyen katsauksen erilaisiin visualisointeihin ( visualization zoo ) esitellen tekniikoita erilaisten datajoukkojen visualisointiin ja niiden kanssa vuorovaikuttamiseen Artikkeli ei yritä esitellä kaikkia mahdollisia visualisointitekniikoita Artikkelissa keskitytään tavallisten visualisointien sijasta edistyneempiin ja epätavallisempiin tekniikoihin Kaikkia mahdollisia tekniikoita ei ole vielä edes löydetty Näkökulmina: aikasarjadata, tilastollinen data, kartat, hierarkiat ja verkostot Useimpiin artikkelin visualisoinneista on artikkelissa liitetty vuorovaikutteinen esimerkki Esimerkit luotu käyttäen Protovis-kirjastoa, jolla datasta voidaan luoda SVG-grafiikkaa http://vis.stanford.edu/protovis/ Esityksen kuvat artikkelista 5
Aikasarjadata Yksi yleisimmistä tallennetun datan muodoista: joukko ajan myötä muuttuvia arvoja Keskeisessä roolissa monilla aloilla, kuten taloudessa, tieteessä ja yhteiskuntapolitiikassa Usein tarpeena vertailla suurta määrää aikasarjoja samanaikaisesti Valittavissa joukko visualisointeja 6
Aikasarjadata: visualisointitekniikoita 1 (4) Index charts Raaka-arvot vähemmän tärkeitä kuin suhteelliset muutokset Vuorovaikutteinen viivakaavio, jossa näytetään prosentuaaliset muutokset joukolle aikasarjoja suhteessa valittuun indeksipisteeseen (index point) 7
Aikasarjadata: visualisointitekniikoita 2 (4) Stacked graphs (pinottu) Joidenkin aikasarjojen datan voi nähdä paremmin yhteen koottuna päällekkäin pinottuna Kuvaa kokonaisuuden kaavamaisuuksia ja tukee usein syventymistä alijoukkoon yksittäisiä sarjoja Rajoitteita: ei tue negatiivisia lukuja; merkityksetön datalle, jota ei ole tarkoitettu yhteenlaskettavaksi; saattaa vaikeuttaa kehityssuuntien tarkkaa tulkintaa (avuksi vuorovaikutteinen haku ja suodatus) 8
Aikasarjadata: visualisointitekniikoita 3 (4) Small multiples (kerrannaiset) Usean aikasarjan sijoittaminen samaan kaavioon voi heikentää luettavuutta Vaihtoehtoinen lähestymistapa, jossa jokaisella aikasarjalla on oma pieni kaavionsa Normalisoimalla arvot kussakin kaaviossa voidaan yleiset kehityssuunnat ja kaavamaisuudet havaita tarkemmin Tuloksena usein tehokkaampi visualisointi kuin jos kaikki data olisi yritetty sijoittaa yhteen kaavioon 9
Aikasarjadata: visualisointitekniikoita 4 (4) Horizon graphs Kasvatetaan aikasarjan näkymän datan tiheyttä säilyttäen resoluutio Positiiviselle puolelle peilattu kaavio jaetaan nauhoihin (band), jotka asetetaan päällekkäin Oppiminen vie aikansa, mutta huomattu olevan tehokkaampi kuin tavallinen kaavio koon käydessä melko pieneksi 10
Tilastolliset jakaumat Joukon lukuja jakautuminen Auttaa datan tilastollisten ominaisuuksien ymmärtämisessä Data voidaan haluta sovittaa tilastolliseen malliin hypoteesin testaamiseksi tai tulevien arvojen ennustamiseksi, jolloin sopimattoman mallin valinta voi johtaa vääriin ennustuksiin Tavallisia visualisointitekniikoita mm. Histogrammi (arvojen yleisyys ryhmiteltynä) Box-and-whisker plot ( laatikkokaavio, ilmaisee esim. keskiarvon, mediaanin, ) 11
Tilastolliset jakaumat: visualisointitekniikoita 1 (4) Stem-and-leaf plots ( runko & lehti ) Vaihtoehto histogrammille Ryhmittelee luvut ensimmäisen merkitsevän numeron mukaan ja ryhmän sisällä lajittelee toisen merkitsevän numeron mukaan 12
Tilastolliset jakaumat: visualisointitekniikoita 2 (4) Q-Q plots (quantile / kvantiili) Edellisiä tehokkaampi työkalu taajuusjakauman arviointiin Vertaa kahta todennäköisyysjakaumaa kuvaamalla niiden kvantiilit toisiaan vastaan Rajoitteena tehokkaan käytön vaatima tilastotieteen tuntemus 13
Tilastolliset jakaumat: visualisointitekniikoita 3 (4) SPLOM (Scatter plot matrix) Tapa visualisoida useiden muuttujien suhteita toisiinsa monimuuttujaisessa datassa Eri muuttujien suhteet toisiinsa näytetään muuttujaparettain Mahdollisuus visuaalisesti tarkastella minkä tahansa parin korrelaatiota Tukena vuorovaikutteiset tekniikat: toisiaan vastaavat datapisteet korostetaan kaikissa kaavioissa (brushing and linking) 14
Tilastolliset jakaumat: visualisointitekniikoita 4 (4) Parallel coordinates (rinnakkaiset koordinaatistot) Data kuvataan rinnakkaisilla akseleilla ja toisiinsa liittyvät datapisteet yhdistetään murtoviivalla Risteävät viivat viittaavat usein käänteiseen korrelaatioon Tukena vuorovaikutteiset tekniikat ja akselien uudelleenjärjestäminen Etuna myös suhteellisen tehokas tilankäyttö 15
Kartat Luonnollinen tapa esittää maantieteellistä dataa Pitkä ja vaiheikas suunnitteluhistoria Monet kartat perustuvat karttaprojektioihin (cartographic projection) Kuvaus maapallon 3-ulotteisesta geometriasta 2- ulotteiseksi kuvaksi Jotkin kartat tietoisesti vääristelevät tai yleistävät maantieteellisiä ominaisuuksia kerronnan rikastamiseksi tai tietyn datan korostamiseksi 16
Kartat: visualisointitekniikoita 1 (4) Flow maps (virtauskartat) Määrän liikkumisen kuvaaminen tilassa ja epäsuorasti ajassa asettamalla virtausviivoja kartan päälle Virtausviivat pitävät yleensä sisällään paljon monimuuttujaista informaatiota Karttaa voidaan myös hieman vääristellä virtausten mahduttamiseksi tai korostamiseksi 17
Kartat: visualisointitekniikoita 2 (4) Choropleth maps Alueittain kootun ja yhdistetyn datan visualisointi alueittain värikoodatulla kartalla Käyttö vaatii huolellisuutta Tiheyskarttaa toteutettaessa käytettävä normalisoituja arvoja Alueen pinta-ala voi vaikuttaa havaintoihin 18
Kartat: visualisointitekniikoita 3 (4) Graduated symbol maps Vaihtoehto edelliselle Kartan päälle sijoitetaan symboleita Vältetään maantieteellisen pintaalan sekoittuminen datan arvoihin ja tehdään monipuolisempi visualisointi mahdolliseksi Yksinkertaisten symbolien lisäksi voidaan käyttää monimutkaisempiakin symboleja 19
Kartat: visualisointitekniikoita 4 (4) Cartograms (karttapiirrokset) Vääristellään maantieteellisen alueen muotoa niin, että se suoraan kuvaa datamuuttujaa Monia erilaisia karttapiirroksia olemassa 20
Hierarkiat Suurin osa datasta voidaan järjestää luonnolliseksi hierarkiaksi Jopa dataan, jolla ei ole ilmeistä hierarkiaa, voidaan soveltaa tilastollisia menetelmiä datan järjestämiseksi empiirisesti Visualisointitekniikoiden avulla voidaan tehdä mikrotason havaintoja yksittäisistä elementeistä ja makrotason havaintoja suurista ryhmistä 21
Hierarkiat: visualisointitekniikoita 1 (7) Node-link diagrams (solmu-yhteys) 2-ulotteinen puu Monia erilaisia asetteluja (layout) Esim. Reingold- Tilford-algoritmi tuottaa siistin tuloksen, jossa on vähän tuhlattua tilaa 22
Hierarkiat: visualisointitekniikoita 2 (7) Node-link diagrams (solmu-yhteys) Vaihtoehtoinen visualisointimalli on dendrogram-algoritmi (cluster), joka asettaa puun lehtisolmut samalle tasolle Käyttämällä napakoordinaatistoa karteesisen koordinaatiston sijaan visualisoinnista saadaan esteettisesti miellyttävä käyttäen tila samalla tehokkaasti 23
Hierarkiat: visualisointitekniikoita 3 (7) Node-link diagrams (solmu-yhteys) Sisennettyä puuta käytetään esim. hakemistorakenteen kuvaamiseen Mahdollistaa puun tehokkaan vuorovaikutteisen tutkimisen tietyn solmun löytämiseksi, vaikka vaatiikin mm. paljon pystysuoraa tilaa Mahdollistaa myös nopean solmujen nimien silmäilyn ja monimuuttujaista dataa voidaan esittää hierarkian rinnalla 24
Hierarkiat: visualisointitekniikoita 4 (7) Adjacency diagrams (vierekkäisyys) Tilantäyttävä muunnelma edellisistä Solmut piirretään täytettyinä alueina (joko kaarina tai palkkeina), joiden sijoittuminen suhteessa naapurisolmuihin kertoo niiden paikan hierarkiassa Esim. jääpuikkoasettelu (icicle layout), jossa juuri on ylhäällä ja solmut sen alla hierarkiana Solmujen leveyttä voidaan käyttää visualisoinnin lisäulottuvuutena 25
Hierarkiat: visualisointitekniikoita 5 (7) Adjacency diagrams (vierekkäisyys) Sunburst-asettelu vastaa edellistä, mutta käyttää napakoordinaatistoa Molemmat toteutettu käyttäen jakoasettelua (partition layout), jolla voidaan myös tuottaa solmu-yhteys-kaavio (node-link diagram) Vastaavasti aiempaa ryhmäasettelua (cluster layout) voidaan käyttää luotaessa tilantäyttävä vierekkäisyyteen perustuva kaavio joko karteesisessa tai napakoordinaatistossa 26
Hierarkiat: visualisointitekniikoita 6 (7) Enclosure diagrams (sisältyvyys) Myös tilantäyttävä, mutta käyttää sisältyvyyttä hierarkian esittämiseen Puukartta (treemap) jakaa alueen rekursiivisesti nelikulmioihin Vierekkäisyyteen perustuvien kaavioiden tapaan minkä tahansa solmun koko puussa käy nopeasti selväksi Erilaisia algoritmeja, joita käytetään vaihtelevasti 27
Hierarkiat: visualisointitekniikoita 7 (7) Enclosure diagrams (sisältyvyys) Nelikulmioiksi jakamisen sijaan voidaan käyttää sisäkkäisiä ympyröitä Tilankäytöltään ei yhtä tehokas kuin edellinen, mutta circle-packingasettelussa tuhlattu tila tuo tehokkaasti esiin hierarkian Samalla solmujen kokoja voi nopeasti vertailla 28
Verkostot Datan suhteiden visualisointi Teoreettisesti hierarkia on verkoston erikoismuoto Osin samoja visualisointitekniikoita (node-link diagram) voidaan käyttää, mutta hierarkian puuttumisen takia tarvitaan eri algoritmi solmujen asetteluun Graafi: muodollinen termi kuvaamaan verkostoa matematiikassa Keskeinen haaste graafin visualisoinnissa on tehokkaan asettelun laskeminen Yleensä toisiinsa liittyvät solmut yritetään sijoittaa lähekkäin ja toisiinsa liittymättömät riittävän etäälle toisistaan suhteiden erottelemiseksi Jotkin visualisointitekniikat saattavat yrittää optimoida muita visuaalisia ominaisuuksia (esim. risteävien viivojen määrän minimointi) 29
Verkostot: visualisointitekniikoita 1 (3) Force-directed layouts (voimaohjattu) Hyvä lähtökohta yleisen suuntaamattoman graafin rakenteen ymmärtämiseen Tavallinen ja intuitiivinen lähestymistapa verkoston asetteluun on mallintaa graafi fysikaalisena järjestelmänä Solmut varautuneita, toisiaan hylkiviä hiukkasia Yhteydet vaimennettuja jousia, jotka vetävät toisiinsa liittyviä solmuja yhteen Voimien fysikaalinen simulaatio määrittää solmujen sijainnit Tukena vuorovaikutteisuus: käyttäjä voi vaikuttaa asetteluun ja heiluttaa solmuja yhteyksien selkeyttämiseksi 30
Verkostot: visualisointitekniikoita 2 (3) Arc diagrams (kaari) 1-ulotteinen solmujen asettelu, jossa pyöreät kaaret edustavat yhteyksiä Ei ehkä tuo graafin kokonaisrakennetta yhtä tehokkaasti esiin kuin 2- ulotteinen asettelu Hyvällä solmujen järjestyksellä merkittävät ryhmät ja solmut (cliques & bridges) ovat helposti tunnistettavissa Sisennetyn puun tapaan solmujen rinnalla voidaan esittää monimuuttujaista dataa 31
Verkostot: visualisointitekniikoita 3 (3) Matrix views (matriisi) Graafia voi ajatella sitä vastaavana matriisina (adjacency matrix) Matriisia voidaan käyttää visualisointina Käyttämällä värejä tekstin sijaan yhteyksiin liittyvät arvot havaitsee nopeammin Polkujen seuraaminen on matriisissa vaikeampaa, mutta matriiseilla on muita etuja Verkoston koon ja yhteyksien määrän kasvaessa matriisi on yhä luettavissa Hyvällä rivien ja sarakkeiden järjestyksellä merkittävät ryhmät ja solmut (cliques & bridges) ovat helposti tunnistettavissa Vuorovaikutteinen ryhmittely ja uudelleenjärjestely helpottaa verkoston rakenteen vieläkin syvällisempää tutkimista 32