ホーム > タグ > pChart
pChart
pChart使ってみた
- 2010-06-01 (火)
- PHP
|
簡単に見栄えの良いグラフをかけると評判の PHP のグラフライブラリ pChart を試してみました。
pChart | a PHP Charting library
サンプルを見ても結構大変だったので、サンプルを元にコメントを付けたのが以下になります。
■ 確認環境
・ Windows7 64bit
・ PHP5.3.2
■ コード
- // ライブラリの読み込み
- require("pChart/pData.class");
- require("pChart/pChart.class");
- // --------------------------------------
- // データの準備
- // --------------------------------------
- $data = new pData;
- $data->AddPoint(array(1,4,3,2,3,3,2,1,0,7,4,3,2,3,3,5,1,0,7),"Serie1");
- $data->AddSerie("Serie1");
- $data->SetSerieName("データその1","Serie1");
- $data->AddPoint(array(4,5,6,3,1,4,7,3,1,2,1,4,5,1,2,4,7,1,6),"Serie2");
- $data->AddSerie("Serie2");
- $data->SetSerieName("データその2","Serie2");
- // --------------------------------------
- // グラフの初期化
- // --------------------------------------
- $chart = new pChart(700,230); // グラフの画像サイズ:横,縦
- $chart->setFontProperties("../fonts/meiryo.ttc",10); // フォント,サイズ
- $chart->setGraphArea(40,30,680,200); // グラフのキャンバス (x1,y1),(x2,y2)
- $chart->drawGraphArea(252,252,252); // RGB
- $chart->drawScale($data->GetData(),$data->GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2); // スケール
- $chart->drawGrid(4,TRUE,230,230,230,255); //グラフ背景のグリッド
- // --------------------------------------
- // グラフの描画
- // --------------------------------------
- // 折れ線グラフ
- $chart->drawLineGraph($data->GetData(),$data->GetDataDescription());
- // データのプロット(折れ線グラフの各点)
- $chart->drawPlotGraph($data->GetData(),$data->GetDataDescription(),3,2,255,255,255); // 外側半径,内側半径,R,G,B
- // legendは「凡例」
- $chart->setFontProperties("../fonts/meiryo.ttc",8);
- $chart->drawLegend(45,35,$data->GetDataDescription(),255,255,255); // 場所, RGB
- // タイトル
- $chart->setFontProperties("../fonts/meiryo.ttc",10);
- $chart->drawTitle(60,22," グラフを書いてみたよ",50,50,50,585); // 場所, RGB
- $chart->Render("test.png"); // ファイルに書き出す
※クリックで最大化します。
■ その他
・ UTF-8じゃないとグラフの日本語が文字化けしてしまいました。
・ php.iniのGDを有効にしておく必要があります。
extension=php_gd2.dll
・ バグレポートにあるとおり、そのままだと notice が出てしまいます。
SourceForge.net: pChart: Topic: Bug with pData.class.php
気になる方は notice を無視するか、pData.class:55 あたりに以下の修正を入れると OK です。
- // -----------------------------------
- // notice対応
- $this->Data = array();
- //$this->Data = "";
- // -----------------------------------
pChartは素晴らしいグラフライブラリなのですが、更新が途絶えて久しいのが気になりますね。
Forumを有効に利用すると良いかもです。
- Comments: 0
- Trackbacks: 0
Home > Tags > pChart



