Graphs for Android
Jazyk EN SK | Navigácia | Android projekty -> Graphs for Android -> GraphDemo |
Názov | GraphLib (eu.sensys.graphlib) |
Typ | Knižnica |
Platforma | Android |
Opis | Knižnica s komponentami pre zobrazenie grafov |
Stiahnuť | hneď ako knižnicu odladím... |
Obsah knižnice
Knižnica GraphLib obsahuje komponenty pre mobilnú platformu Android pre vizualizáciu grafov. Obsahuje najznámešie typy grafov ako sú:
- čiarový graf,
- XY graf,
- stĺpcový graf,
- tabuľka (reprezentácia dát vo forme tabuľky).
Podrobný obsah knižnice
Platforma
- Minimálna verzia Android API: 8 (FroYo)
Spoločné vlastnosti všetkých komponentov
Každý graf obsahuje nadpis, osi x a y, ktorým možno priradiť označenie a samotné grafické znázornenie grafu. Pri znázornení viacerých dátových radov (kriviek v grafe) sú tieto farebne odlíšené podľa zvolenej grafickej témy. K dispozícii sú 4 témy: téma android, tmavá téma, pastelová téma a zeleno-žltá téma.
Ukážka použitia grafu
GraphXY graf
graf = (GraphXY) findViewById(R.id.graphXY1);
//datova struktura pre reprezentaciu dat
dt=new DataTable();
// pridanie 1. datovej rady
dt.addDataSet("teplota");
dt.addDataY(5);
dt.addDataY(6);
dt.addDataY(5);
dt.addDataY(7);
//data pre os x
dt.addDataX(1);
dt.addDataX(3);
dt.addDataX(5);
dt.addDataX(6);
dt.addDataX(8);
//priradenie dat ku grafu
graf.addDataTable(dt);
graf.setXlabel("Cas [s]");
graf.setYlabel("Teplota [C]");
graf.setTitle("Pribeh teploty");
Trieda BaseGraph
Základnou triedou je BaseGraph, ktorá zabezpečuje prácu s vykresľovanými dátami, prepočet zobrazovaných dát podľa definovanej mierky a vykreslenie napidsov, osí, popiskov osí a legendy.
Statické konštanty
- Pre nastavenie zobrazenia legendy (parameter metódy setLegendPosition)
- BaseGraph.LEGEND_TOP_LEFT
- BaseGraph.LEGEND_TOP_RIGHT
- BaseGraph.LEGEND_MIDDLE_LEFT
- BaseGraph.LEGEND_MIDDLE_RIGHT
- BaseGraph.LEGEND_BOTTOM_LEFT
- BaseGraph.LEGEND_BOTTOM_RIGHT
- Pre nastavenie spôsobu zobrazenie popiskov osi X
- BaseGraph.XAXIS_DISPLAY_NUM
- BaseGraph.XAXIS_DISPLAY_STR
Verejné medódy
addDataTable - priradí tabuľku dát, ktorá sa bude zobrazovať. Objekt dt (DataTable) musí byť vytvorený a musí obsahovať údaje pre zobrazenie.
public void addDataTable(DataTable dt)
setTitle - nastaví nadpis grafu.
public void setTitle(String title)
setXlabel - nastaví názov osi x.
public void setXlabel(String l)
setYlabel - nastaví názov osi y.
public void setYlabel(String l)
setXLabelRotate - nastaví uhol natočenia popiskov pre os x. Prednastavená hodnota je 0. Uhol rastie proti smeru hodinových ručičiek.
public void setXLabelRotate(int angle)
setXaxisDisplayMode - nastaví spôsob zobrazovania hodnôt na osi x. Pri pridávaní hodnôt pre os x do objektu DataTable je možnosť pridať okrem číslenej hodnoty aj textový popis. Toto sa hodí obzvlášť pri stĺpcových grafoch. Ak sa táto textová hodnota neuvedie, tak textový popis hodnoty je rovnaký ako hodnota. Uvedením parametra BaseGraph.XAXIS_DISPLAY_NUM sa budú zobrazovať na osi x číselné hodnoty, pri uvedení konštanty BaseGraph.XAXIS_DISPLAY_STR sa zobrazia textová alternatíva.
public void setXaxisDisplayMode(int mode)
setStyle - nastaví vizuálny štýl pre zobrazenie grafu. Možné hodnoty parametra style sú: GraphStyle.THEME_ANDROID, GraphStyle.THEME_DARK, GraphStyle.THEME_PASTEL, GraphStyle.THEME_CITRUS
public void setStyle(int style)
displayLegend - určuje či sa zobrazí (dLegend=true) alebo nezobrazí (dLegend=false) legenda
public void displayLegend(boolean dLegend)
setDisplayMarkers - uplatňuje sa pri čiarovom a XY grafe. Určuje sa, či sa vo vykresľovanej krivke, resp. lomenej čiare zobrazia značky daného bodu.
public void setDisplayMarkers(boolean markers)
Trieda DataTable
Trieda TadaTable slúži na uchovanie zobrazovaných dát. Pomocou objektu tejto triedy sa konkrétnemu grafu sprístupnia hodnoty, ktoré bude zobrazovať. Vnútorná reprezentácia dát je nasledovná:
- Hodnoty pre os x sú uložené v zozname reálnych čísel (ArrayList<Double>)
- Keďže graf môže zobrazovať viacero kriviek (viacero dátových radov), hodnoty pre os y sú uložené nasledovne:
- Každá dátová rada je zoznam reálnych čísel (ArrayList<Double>)
- Dátové rady sú reprezentované ako zoznam dátových rád (ArrayList<T>)
Verejné metódy
addDataSet - Pridá novú množinu údajov. Parametrom je názov novej dátovej množiny. Tento názov sa zobrazí v legende.
public void addDataSet(String title)
setDataSetName - nastaví existujúcej dátovej množine nový názov. Parametre:
- index - poradové číslo množiny. Prvá vložená množina má index 0.
- title - nový názov dátovej množiny.
public int setDataSetName(int index, String title)
setDataSetName rovnaká funkcionalita ako predchádzajúca matóda, ale nastaví sa názov aktuálne vybranej dátovej množiny. Dátová množina sa nastaví ako aktívna pomocou metódy setActiveSet.
public int setDataSetName(String title)
setActiveSet - nastaví vybranú dátovú množinu ako aktívnu.
- index - poradové číslo dátovej množiny, ktorá bude označená ako aktívna.
public void setActiveSet(int index)
addDataX - do množiny údajov pre os x pridá jeden nový údaj spolu s jeho textovým opisom, ktorý môže byť zobrazený na osi x namiesto číselnej hodnoty. O tom, či bude zobrazená na ose x číselná hodnota alebo textová alternatíva sa určí pomocou metódy setXaxisDisplayMode triedy BaseGraph.
- data - ďalšia číselná hodnota pre os x
- tick - textová alternatíva pre hodnotu x. Vhodné využiť pri stĺpcovom grafe.
public void addDataX(double data, String tick)
addDataX - - do množiny údajov pre os x pridá jeden nový údaj.
- data - ďalšia číselná hodnota pre os x
public void addDataX(double data)
addDataY - Do vybranej množiny údajov pridá jeden nový údaj pre os y.
- setIndex - poradové číslo dátovej množiny. Dátové množiny sú číslované od 0.
- data - nová hodnota pre os y
public void addDataY(int setIndex, double data)
addDataY - Do aktívnej dátovej množiny údajov pridá jeden nový údaj pre os y. Aktívna dátová množina sa nastaví pomocou metódy SetActiveSet
- data - nová hodnota pre os y
public void addDataY(double data)
getSetLabel - Vráti názov vybranej dátovej množiny
- index - poradové číslo dátovej množiny
public String getSetLabel(int index)
getSetMax - Vráti maximum v aktívnej dátovej množine
public double getSetMax()
getSetMin - Vráti minimum v aktívnej dátovej množine
public double getSetMin()
getMinValue - Vráti minimum zo všetkých dátových množin
public double getMinValue()
getNumberOfSet - Vráti počet všetkých dátových množín.
public int getNumberOfSets()
getNumberOfRows - Vráti veľkosť, resp. počet záznamov z vybranej dátovej množiny.
- index - poradové číslo vybranej množiny
public int getNumberOfRows(int index)
getValue - Vráti hodnotu z vybranej dátovej množiny, z vybraného riadku
- setIndex - poradové číslo množiny,z ktorej chceme vybrať hodnotu
- rowIndex - poradové číslo záznamu vo vybranej dátovej množine. Riadky sú číslované od 0.
public double getValue(int setIndex, int rowIndex)
getValueStr Vráti hodnotu z vybranej dátovej množiny, z vybraného riadku ako reťazec. Význam parametrov je rovnaký ako pri metóde getValue.
public String getValueStr(int setIndex, int rowIndex)
setValue - Nastaví novú hodnotu vo vybranej dátovej množine, na definovanej pozícii
- setIndex - poradové číslo množiny,do ktorej chceme vložiť hodnotu
- rowIndex - poradové číslo záznamu vo vybranej dátovej množine. Riadky sú číslované od 0.
- val - nová hodnota, ktorá sa uloží
public void setValue(int setIndex, int rowIndex, double val)
removeSet - zmaže dátovú množinu
- index - poradové číslo množiny, ktorá sa zmaže
public void removeSet(int index)