ホーム > タグ > pChart

pChart

pChart使ってみた

簡単に見栄えの良いグラフをかけると評判の PHP のグラフライブラリ pChart を試してみました。

pChart | a PHP Charting library

サンプルを見ても結構大変だったので、サンプルを元にコメントを付けたのが以下になります。

■ 確認環境
・ Windows7 64bit
・ PHP5.3.2

■ コード

  1.  <?php
  2.  
  3.  // ライブラリの読み込み
  4.  require("pChart/pData.class");
  5.  require("pChart/pChart.class");
  6.  
  7.  // --------------------------------------
  8.  // データの準備
  9.  // --------------------------------------
  10.  $data = new pData;
  11.  
  12.  $data->AddPoint(array(1,4,3,2,3,3,2,1,0,7,4,3,2,3,3,5,1,0,7),"Serie1");
  13.  $data->AddSerie("Serie1");
  14.  $data->SetSerieName("データその1","Serie1");
  15.  
  16.  $data->AddPoint(array(4,5,6,3,1,4,7,3,1,2,1,4,5,1,2,4,7,1,6),"Serie2");
  17.  $data->AddSerie("Serie2");
  18.  $data->SetSerieName("データその2","Serie2");
  19.  
  20.  // --------------------------------------
  21.  // グラフの初期化
  22.  // --------------------------------------
  23.  $chart = new pChart(700,230);    // グラフの画像サイズ:横,縦
  24.  $chart->setFontProperties("../fonts/meiryo.ttc",10);    // フォント,サイズ
  25.  $chart->setGraphArea(40,30,680,200);    // グラフのキャンバス (x1,y1),(x2,y2)
  26.  $chart->drawGraphArea(252,252,252);    // RGB
  27.  $chart->drawScale($data->GetData(),$data->GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2);    // スケール
  28.  $chart->drawGrid(4,TRUE,230,230,230,255);    //グラフ背景のグリッド
  29.  
  30.  // --------------------------------------
  31.  // グラフの描画
  32.  // --------------------------------------
  33.  // 折れ線グラフ
  34.  $chart->drawLineGraph($data->GetData(),$data->GetDataDescription());
  35.  // データのプロット(折れ線グラフの各点)
  36.  $chart->drawPlotGraph($data->GetData(),$data->GetDataDescription(),3,2,255,255,255);    // 外側半径,内側半径,R,G,B
  37.  
  38.  // legendは「凡例」
  39.  $chart->setFontProperties("../fonts/meiryo.ttc",8);
  40.  $chart->drawLegend(45,35,$data->GetDataDescription(),255,255,255);    // 場所, RGB
  41.  // タイトル
  42.  $chart->setFontProperties("../fonts/meiryo.ttc",10);
  43.  $chart->drawTitle(60,22," グラフを書いてみたよ",50,50,50,585);    // 場所, RGB
  44.  
  45.  
  46.  $chart->Render("test.png"); // ファイルに書き出す

■ 作成されたグラフ
pChart_test

※クリックで最大化します。

■ その他
・ UTF-8じゃないとグラフの日本語が文字化けしてしまいました。

・ php.iniのGDを有効にしておく必要があります。

extension=php_gd2.dll

・ バグレポートにあるとおり、そのままだと notice が出てしまいます。

SourceForge.net: pChart: Topic: Bug with pData.class.php

気になる方は notice を無視するか、pData.class:55 あたりに以下の修正を入れると OK です。

  1.  <?php
  2.  // -----------------------------------
  3.  // notice対応
  4.       $this->Data = array();
  5.       //$this->Data                         = "";
  6.  // -----------------------------------

pChartは素晴らしいグラフライブラリなのですが、更新が途絶えて久しいのが気になりますね。
Forumを有効に利用すると良いかもです。

Home > Tags > pChart

Search
Feeds
Link
あわせて読みたいブログパーツ
Meta
AD








DMM.com 家電・日用品通販

Return to page top