これまでは XY 座標に基づいたプロットだけを扱ってきました。JpGraphで作成できるグラフはこれだけではありません。その一つの形式が円プロットです。JpGraph では2D と 3D の円プロット をサポートしています。また、2D 円プロットの場合は後述するとおり 2 種類のものがあります。
XY プロットとの最大の違いは、円プロットは Graph() オブジェクトではなく PieGraph() オブジェクトを基に作成することです。これを使用するには、jpgraph_pie.php ファイル、あるいは jpgraph_pie3d.php ファイルをインクルードする必要があります。
まずはデフォルトの最もシンプルな円プロットを作成する例を掲載します。
include ("../jpgraph.php");
include ("../jpgraph_pie.php");
$data = array(40,60,21,33);
$graph = new PieGraph(300,200);
$graph->SetShadow();
$graph->title->Set("A simple Pie plot");
$p1 = new PiePlot($data);
$graph->Add($p1);
$graph->Stroke();
このコードを使うと、下記のような外見のグラフが出力されます。
円プロットでは以下のような機能があります。
また、円プロットの外見も様々に変更できます。たとえば、以下の通りです:
次に、円プロットに凡例を追加してみましょう。凡例は SetLegends(); メソッドを使用します。凡例を追加すると以下のような画像が出力されます。
(上記の例では、円プロットの中心を少し左にずらし、凡例を表示するスペースを空けています。)
凡例のテキストでは、数値の整形に printf() 形式の書式を指定することができます。この場合、文字列に渡される数値は絶対値かパーセント値のいずれかです。詳細はこの章の後半で説明します。
次に、円プロットのサイズと位置を調節しましょう。円プロットのサイズはSetSize(); メソッドを使用します。また、円プロットの位置を中心に配置するには、SetCenter() メソッドを使用します。サイズはピクセル単位の絶対値か、横幅もしくは縦幅と比較した割合のいずれかで指定できます。円プロットの位置は横幅と縦幅で指定できます。
1 つのグラフ内に、複数の円プロットを設置する方法を紹介します。下の例では、スライスの凡例を小さなフォントに設定しました。
サイズや配置の説明をするために、今回は 4 個の円プロットを作成し、それらをグラフの四隅に配置します。それにより、以下の画像が出力されます。