app/vendors に pchat ディレクトリを作成し、その下に pCache.class, pChart.class, pData.class を配置する。ここで拡張子の class を php に変更することで pChart のモジュールが読み込めるようになる。
function exam_graph() {
/* pChart を使用する */
App::import('Vendor', 'pchart/pdata');
App::import('Vendor', 'pchart/pchart');
$font_path = "c:\Windows\Fonts\sazanami-gothic.ttf";
/* Cache に保存された値を読み込む */
$users = Cache::read('users');
$total = Cache::read('total');
Cache::delete('users');
Cache::delete('total');
$y1data = array();
$a = array();
foreach ($users as $user) {
array_push($y1data, $user['Exam']['math']);
array_push($a, $user['User']['username']);
}
$data = new pData;
$data->AddPoint($y1data, "math");
$data->AddPoint($a, "date");
$data->AddSerie("math");
$data->SetAbsciseLabelSerie("date");
$data->SetSerieName("数学", "math");
$chart = new pChart(700, 230);
$chart->setFontProperties($font_path,8);
$chart->setGraphArea(50, 30, 680, 200);
$chart->drawScale($data->GetData(),$data->GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2,TRUE);
/* chart に data を配置しグラフを描く */
/* 棒グラフの場合は drawBarGraph */
$chart->drawBarGraph($data->GetData(), $data->GetDataDescription(), TRUE);
/* 画像として出力する */
$chart->Stroke();
}
0 件のコメント:
コメントを投稿