Grafy na stránkách – jqPlot

Často potřebujete na stránkách zobrazit různé grafy a pak je potřeba zvolit vhodné řešení. Na výběr máme v podstatě dva způsoby. Buď graf vytvoříme pomocí PHP na straně serveru, a to formou obrázku nebo pomocí obrázku tentokrát vytvořeného Javascriptem. Jaké jsou ve zkratce výhody a nevýhody?

 
 

  • grafy pomocí PHP

    Při vytváření máme v podstatě jen jednu možností, jak vytvořit graf a to je sestavit obrázek. Projekty, které jsem na webu našel a zkoušel jsou takto postavené. V podstatě ani jiná možnost není, jelikož PHP běží na serveru. Liší se jen způsobem, v kterém místě a jak je vytvořen obrázek. Buď je volána funkce, která vygeneruje soubor s grafem a ten je prezentován, nebo je obrázek načítán z jiné adresy, kde je skript, který vygeneruje pomocí hlaviček obrázek přímo pro prohlížeč. 

     
     

  • grafy pomocí Javascriptu

    V případě Javascriptu je obrázek vytvořen pomocí obrázků a CSS stylů. Obdobným způsobem jako v PHP. Použity jsou také další funkce, které JS a CSS nabízí. Tvorba je však na straně klienta.

 
 

Hlavní rozdíly:

  • PHP:

    + graf můžeme vytvořit v okamžiku kdy zpracováváme data což bývá ve smyčce poběhem zpracování výsledků

    + širší nabídka hotových projektů

    + nezávislost na klientském prohlížeči

    – nutnost mít přístupné správné grafické knihovny – na některých hostingách může být problém

     
     

  • Javascript

    + vyšší nabídka funkcí pro práci s grafem – například zoom

    + výpočetní výkon je přenesen na klient

    – data se musí ke klientovy dostat což v případech větších grafu zvyšuje provoz

    – data je potřeba zpracovat na začátku stránky, což souvisí se začleněním JS do struktury stránek. Ne vždy jsou ale data v daném okamžiku dostupná

     
     

Osobně preferuji řešení pomocí Javascript, a to konkrétně projekt jqPlot, který nabízí dostatek funkcí a dalších možností pro práci s grafem.