PEARのライブラリを使うと折れ線グラフも簡単に作ることができる。
使い方は簡単。
require_once 'Image/Graph.php';
ライブラリ読み込み
$w = 600; $h = 300;
画像サイズを設定
$Graph =& Image_Graph::factory('graph', array($w, $h));
これがキャンバスになる
■日本語フォントを使いたい時は、フリーの日本語フォントをサーバー上に置いて指定する。
$Font =& $Graph->addNew('font', '../../font/ipam.ttf');
フォントオブジェクトを作成
$Font->setSize(10);
フォントサイズも指定できる(10ピクセル)
$Graph->setFont($Font);
キャンバスにフォントを適用
■タイトルとグラフを作成するエリアを設定
$img_text = mb_convert_encoding('日別推移',"UTF-8","euc");
日本語を使う時はUTF-8にするのがポイント
コンバートしてあげればいい
$Graph->add( Image_Graph::vertical( Image_Graph::factory('title', array($img_text, 12)), タイトルエリアは上グラフ関連エリア下 文字サイズ12ピクセル Image_Graph::vertical( $Plotarea = Image_Graph::factory('plotarea'), グラフエリアは上 $Legend = Image_Graph::factory('legend'), 凡例エリアは下 90 グラフの占める縦のパーセンテージ ), 20 タイトルが占める縦のパーセンテージ ) );
$Plotarea->setPadding(array("top"=>1,"right"=>2,"bottom"=>2,"left"=>2));
グラフ描画エリアのpadding設定はこんな感じ
$Legend->setPlotarea($Plotarea);
データと凡例の関係付け
$Legend->setPadding(0);
Legend の padding
$Plotarea->setFillColor('gray@0.05');
グラフエリアの背景色/透明度
$GridY =& $Plotarea->addNew('line_grid', null, IMAGE_GRAPH_AXIS_Y); $GridY->setLineColor('gray@0.1'); $GridX =& $Plotarea->addNew('bar_grid', null, IMAGE_GRAPH_AXIS_X); $GridX->setLineColor('gray@0.1');
升目のグリッド指定
サンプル
http://digital-gate.com/graph/image_graph.php