Graphs for Android

Z Kiwiki
Verzia z 21:31, 25. marec 2013, ktorú vytvoril Juraj (diskusia | príspevky)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Skočit na navigaci Skočit na vyhledávání
Jazyk EN SK Navigácia Android projekty -> Graphs for Android -> GraphDemo
Názov GraphLib (info.kiwiki.graphlib)
Verzia 1
Typ Knižnica
Platforma Android
Opis Knižnica s komponentami pre zobrazenie grafov
Autor
Stiahnuť graphlib.jar

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).

Funkcionalita

  • Automatické alebo manuálne určenie mierky osi y
  • Dostupné 4 vizuálne štýly
  • V aktuálnej verzii obsahujú grafy 1 os y
  • Zväčšovanie a zmenšovanie grafov pomocou známych giest (2 prsty vzďaľujúce a približijúce sa navzájom)
  • Posun grafu pomocou ťahania (1 prst ťahá obraz)
  • Zresetovanie do pôvodných hraníc (3 prsty položené na displej)
Graph for android zoomin.png Graph for android zoomout.png
Gesto pre zväčšenie grafu Gesto pre zmenšenie grafu
Graph for android reset.png Graph for android translate.png
Gesto pre obnovenie pôvodných rozmerov Gesto pre posun grafu


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");
Diagram tried graplib


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.

Trieda BaseGraph

Verejné objekty

DataTable data
Objekt DataTable pre reprezentáciu zobrazovaných dát. Tento objekt je nutné použiť pri všetkých typoch grafov pre uloženie zobrazovaných dát.

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)


displayLegend - určuje či sa zobrazí (dLegend=true) alebo nezobrazí (dLegend=false) legenda

public void displayLegend(boolean dLegend)


getDisplayMarkers - vráti informáciu o tom, či budú v grafe zobrazené značky cez zobrazované body.

public boolean getDisplayMarkers(){
    return this.display_markers;
}

getStyle - Vráti štýl grafu ako konštantu

  • GraphStyle.THEME_ANDROID
  • GraphStyle.THEME_DARK
  • GraphStyle.THEME_PASTEL
  • GraphStyle.THEME_CITRUS
public int getStyle(){}


getTitle - Vráti názov grafu

public String getTitle()


getXLabelRotate - vráti natočenie popiskov na osi x. Výsledná hodnota je uhol v stupňoch a kladná hodnota natočenia je orientovaná proti smeru hodinových ručičiek.

public int getXLabelRotate()


resetYmin - zruší manuálne nastavenie dolného limitu pre zobrazenie hodnôt na osi y. Po zavolaní tejto metódy sa dolná hranica grafu na osi y vypočíta automaticky podľa zobrazovaných hodnôt.

public void resetYmin()


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)


setLegendPosition - Nastaví pozíciu legendy. Podrobnosti o parametre metódy sú v časti statické konštanty (trieda MaseGraph)

public void setLegendPosition(int position)


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)


setTickXformat - Nastaví počet desatinných miesto pre zobrazenie hodnôt na ose x.

public void setTickXformat(int format)


setTitle - nastaví nadpis grafu.

public void setTitle(String title)


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)


setXlabel - nastaví názov osi x.

public void setXlabel(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)


setYlabel - nastaví názov osi y.

public void setYlabel(String l)

Trieda GraphStyle

Trieda GraphStyle je trieda s konštantami (final) a definuje farby pre jednotlivé štýly. Trieda obsahuje 4 základné štýly pre zobrazenie grafov: GraphStyle.THEME_ANDROID, GraphStyle.THEME_DARK, GraphStyle.THEME_PASTEL a GraphStyle.THEME_CISTRUS


Téma ANDROID

Pozadie grafu  
1. dátová rada  
2. dátová rada  
3. dátová rada  
4. dátová rada  
5. dátová rada  


Téma DARK

Pozadie grafu  
1. dátová rada  
2. dátová rada  
3. dátová rada  
4. dátová rada  
5. dátová rada  


Téma PASTEL

Pozadie grafu  
1. dátová rada  
2. dátová rada  
3. dátová rada  
4. dátová rada  
5. dátová rada  


Téma CITRUS

Pozadie grafu  
1. dátová rada  
2. dátová rada  
3. dátová rada  
4. dátová rada  
5. dátová rada