Aihepiiri: grafiikka
Numeerisen datan visualisointikirjasto
Tee ohjelmakirjasto, jolla voi visualisoida numeerista dataa graafisesti.
Grafiikkakirjaston avulla tulee voida esittää ainakin seuraavanlaisia kuvaajia:
- perusviivadiagrammi: 1-n viivaa, joiden pisteet määräytyvät datan (x,y) koordinaattien perusteella. Saman käyrän erillisiä pisteitä yhdistää suorat viivat.
Ohjelman tulee pystyä mallintamaan valmiiksi annettua numeerista dataa (kaksiuloitteisessa tapauksessa annetaan liuta x- ja y-koordinaatteja). Ohjelma lukee datan käyttäjän nimeämästä tiedostosta.
Kuvaajassa tulee näkyä kuvaajan nimi sekä jokin selite eri käytetyille väreille. Käyttäjän tulee itse voida nimetä myös asteikot (sekä mahdolliset akselit).
Koordinaattiakselien numeroinnin tulee olla oikealta väliltä ja numerot eivät saisi piirrettäessä peittää toisiaan.
Käyttäjällä on oltava mahdollisuus lisätä kuvaajan taakse ns. gridi. Gridi on heikosti erottuvalla katkoviivalla piirretty ruudukko (ruudun koon voi asettaa), jonka avulla kuvaajasta on helpompi lukea datan arvoja. Esim. pylvään korkeutta vastaava arvo on helpompi lukea kuvaajasta gridin avulla.
Määrittele ohjelmasi hyväksymän syötteen formaatti, eli millä tavalla data tulee muotoilla ohjelmaasi varten. Pyri helppouteen, selkeyteen ja yksinkertaisuuteen - kuitenkin niin, että formaatti tarjoaa ohjelmaasi varten riittävän monipuolisia vaihtoehtoja.
Laadi lisäksi esimerkkisovellus, jossa hyödynnät grafiikkakirjastoasi johonkin tarkoitukseen.
Vaatimukset
Keskivaikea
- laadi ohjelma yllä olevan tehtävänannon mukaan, ottaen huomioon laajennettavuus. Lähinnä erilaisten (kts. vaativa työ) diagrammityyppien on oltava helposti lisättävissä. Huomaa että eri digrammityypit käyttävät hieman erityyppistä dataa ja niissä on eri määrä dataan liittyviä otsikoita jne.
Vaativa
- kuten keskivaikeaan työhön, mutta kirjaston tulee lisäksi pystyä esittämään seuraavanlaisia diagrammeja:
- peruspylväsdiagrammi: 1-n pylvästä, joiden korkeus määräytyy data-arvojen perusteella. Tässä tapauksessa ei ole varsinaisia x-koordinaatteja, vaan data on muotoa ("datan nimi", "datan arvo") ts. x-akselilla on arvojen sijasta nimiä (esimerkiksi x-akselilla on auton merkki ja y-akselilla sen hinta). Koska x-akselilla ei ole varsinaista asteikkoa, niin arvojen sijasta kunkin pylvään alle tulee kirjoittaa datan nimi (esim. auton merkki). Tässä kuvaajassa ei tarvita erillistä selitettä ja pylväät voi piirtää samalla värillä, koska niiden alla on nimi.
- piirakkadiagrammi: Piirakkadiagrammi kuvaa asioiden keskinäisiä suhteita. Ympyrä jaetaan datan arvoja vastaaviin osiin niin, että kaikki data-arvot yhdessä muodostavat täysiympyrän. Kukin osa ympyrästä väritetään eri värillä.