2008/06/08

PHP functions for Google Chart API

要繪製圖表,PHP 的繪圖函式庫絕對夠用,但是要自己寫程式應付各種不同的圖表,是一件吃力不討好的事情,除了會讓你肝指數增加,還會有頭上冒出光環、背後長出翅膀的風險。然而 Google 提供了一個不錯的選擇,讓你可以使用 Google 的程式和主機幫你完成圖表的繪製。例如:


圖片URL:
http://chart.apis.google.com/chart?cht=lc&chd=t:20,40,60,55,65,75,90,99|90,56,77,10,55,0,60&chs=500x250&chls=1,1,0&chls=2,1,0&chm=D,4D89F9,0,0,5,0|D,FF0000,1,0,5,0


因為要依照專題需求把資料處理好並產生參數實在很耗時間,所以寫了個小函式去跑。目前只支援單筆資料、折線圖、雷達圖二種,顏色也固定住了。

用法:
<?php

require("chart.php");

//圖片長寬,Google Chart 圖片最多到 30000 像素
$x = 400;
$y = 200;

//數值資料
$data[] = 97;
$data[] = 100;
$data[] = 81;
$data[] = 95;
$data[] = 86;

//資料註解,不加註解也請輸入空白
$text[] = 1;
$text[] = 8;
$text[] = 15;
$text[] = 22;
$text[] = 29;

$url = show_pic($x,$y,"line",$data,$text); //要使用雷達圖則將 "line" 改成 "radar"
echo "<img src=\"$url\">";

?>




chart.php 下載:http://sites.google.com/a/zeroplex.twbbs.org/zero-lab/Home/project

另外,網路上也有別人寫好的套件叫做「GphpChart」,不過沒有我要的功能,所以就沒拿來測,大家有興趣可以過去玩一下。

GphpChart
http://www.malaiac.com/GphpChart/

3 則留言:

  1. 程式寫的蠻不錯的~哈,可以學習一下

    回覆刪除
  2. 似乎不錯的樣子...
    最近有畫圖的需求,待會也許可以試試看....
    正好看到yen3大大....就來留個言~~

    回覆刪除