BarPlotクラス

広告

ここでは円グラフを描画する方法を確認していきます。円グラフを作成するにはPiePlotクラスのオブジェクトを作成しPieGraphクラスのオブジェクトに追加します。GraphaクラスではなくPieGraphクラスに追加する点に注意して下さい。

まずはPieGraphクラスについて見ていきます。

CLASS PieGraph EXTENDS Graph

PieGraphクラスはGraphクラスのサブクラスです。またPieGraphクラスは「jpgraph_pie.php」内で定義されていますのでまずこのファイルを読み込む必要があります。

include ("jpgraph/jpgraph.php");
include ("jpgraph/jpgraph_pie.php");

PieGraphクラスのコンストラクタは次のように定義されています。

CONSTRUCTOR

Parameter:
  $width  Width of graph(Default 300)
  $height  Height of graph(Default 200)
  $cachedName  Cache file name(Default "")
  $timeout  Cache timeout in s(Default 0)
  $inline  Should the image be inline.(Default 1)

基本的にGraphクラスと同じです。引数の詳しい説明については『Graphクラス』を参照して下さい。またGraphクラスのサブクラスということで多くのメソッドがGraphクラスと同じように使うことが出来ます。

次にPiePlotクラスについて見ていきます。

CLASS PiePlot

PiePlotクラスは「jpgraph_pie.php」内で定義されています。またコンストラクタは次のように定義されています。

Constructor for PiePlots

Parameter:
  $data  Data array for Pie

1番目の引数に円グラフに表示するデータを配列で指定します。

円グラフですので全てのデータの合計を100%として、個々のデータの割合を表示する形になります。 例として{45, 23, 18, 32}と言う4つのデータを持つ棒グラフを作成するには次のように記述します。

include ("jpgraph/jpgraph.php");
include ("jpgraph/jpgraph_pie.php");

$data = array(45, 23, 18, 32);
$pieplot = new PiePlot($data);

$graph = new PieGraph(250, 200); 

$graph->Add($pieplot);

作成した円グラフをグラフとして追加するにはPieGraphクラスで用意されている「Add」メソッドを使います。こちらはGraphクラスで用意されている「Add」メソッドと同じですので詳しくは『指定したグラフを表示する』を参照して下さい。

サンプル

それでは実際に試して見ます。

sample1-1.php

<?php

include ("jpgraph/jpgraph.php");
include ("jpgraph/jpgraph_pie.php");

$graph = new PieGraph(250, 200, "auto"); 
$graph->SetFrame(true);

$data = array(45, 23, 18, 32);
$pieplot = new PiePlot($data);

$graph->Add($pieplot);

$graph->Stroke();
?>

上記のPHPファイルをブラウザで開いてみます。ブラウザには次のように表示されます。

PiePlotクラスのよる円グラフの作成

円グラフの各スライスは3時の方向(角度0)から開始し反時計回りに表示されていきます。少し変わっているので注意して下さい。

( Written by Tatsuo Ikura )