Image_Graphでpukiwiki用レーダーチャートプラグインを作ったので、メモ。
まずPearのImage_Graphを入れる。
pear install –alldeps Image_Graph-alpha
とりあえずサンプルからコード持ってきていじる。
$Graph->add(
Image_Graph::vertical(
Image_Graph::factory('title', array('', 1)),
Image_Graph::vertical(
$Plotarea = Image_Graph::factory('Image_Graph_Plotarea_Radar'),
$Legend = Image_Graph::factory('legend'),
90
),
0
)
);
Image_Graph::verticalを使うと、縦のレイアウトが組める。第一引数と第二引数で表示する中身指定して、第三引数で第一エリアの表示領域をパーセンテージで指定する。入れ子にして自由にレイアウト組める。
とりあえず、今回タイトルもレジェンドもいらなかったので、さっくりシンプルに。
$Graph->add(
$Plotarea = Image_Graph::factory('Image_Graph_Plotarea_Radar')
);
これだけ。
あと、本来は自動で軸のスケールが決定されるけど、スケール指定したい場合はforceMaximumメソッドを使う。こんな感じ。
$AxisY =& $Plotarea->getAxis(IMAGE_GRAPH_AXIS_Y);
$AxisY->forceMaximum($axis_maximum);
ただし、スケールをはみ出す使い方はできない。値がクリップされるので、表示がおかしくなる。
あと日本語表示について。
$Font =& $Graph->addNew('font', './sazanami-gothic.ttf');
TTFのフォントをどこかに置いて、指定すればOK。ただし、ラベルはUTF-8で指定すること。
$DS1->addPoint(mb_convert_encoding('ほげ','UTF-8','EUC-JP'), 50);