JpGraphで棒グラフの作成

JpGraphは、グラフの構造を決めるクラスとデータ部のクラスからグラフを作成します。

棒グラフの場合、GraphオブジェクトとBarPlotオブジェクトを使ってグラフを作成します。

Graphオブジェクトのコンストラクタにグラフを描画する大きさを指定します。

require_once 'jpgraph.php';
require_once 'jpgraph_bar.php';

$graph = new Graph(200,150,'auto');

X軸とY軸の目盛りを指定します。

require_once 'jpgraph.php';
require_once 'jpgraph_bar.php';

$xdata = array('Jan','Feb','Mar','Apr','May');

$graph = new Graph(200,150,'auto');

$graph->SetScale('textlin');
$graph->xaxis->SetTickLabels($xdata);

各軸に指定する種類をX軸とY軸の組み合わせで指定します。上記例では、X軸が
テキスト(text)、Y軸がリニア(lin)の指定のため'textlin'を引数に指定します。

X軸、Y軸に指定できる目盛りは、次のようになります。
X: 'lin', 'text', 'log', 'int'
Y: 'lin', 'log', 'int'

棒グラフの基本的な設定は、以上です。次にデータの表示部の設定です。

棒グラフの場合、データ部はBarPlotオブジェクトを使用します。

$ydata = array(13,9,17,8,13);

$plot = new BarPlot($ydata);

これで用意が出来たので、グラフオブジェクトにデータを追加し、描画します。

$graph->Add($plot);
$graph->Stroke();

最終的なソース

<?php
require_once 'jpgraph.php';
require_once 'jpgraph_bar.php';

$xdata = array('Jan','Feb','Mar','Apr','May');

$graph = new Graph(200,150,'auto');

$graph->SetScale('textlin');
$graph->xaxis->SetTickLabels($xdata);

$ydata = array(13,9,17,8,13);

$plot = new BarPlot($ydata);

$graph->Add($plot);
$graph->Stroke();
?>

グラフタイトルの追加

グラフにタイトルを追加するには、グラフオブジェクトに次のように指定します。

$graph->title->Set("Bar Graph");

軸ラベルを追加

X軸、Y軸のラベルを指定するには、次のように指定します。

$graph->xaxis->title->Set('Month');
$graph->yaxis->title->Set('Count');

凡例の追加

凡例を表示するには、次のように指定します。

$plot->SetLegend('Legend1');