- 相關(guān)推薦
如何做出PHP數(shù)據(jù)餅圖
用PHP做出的動態(tài)頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執(zhí)行,執(zhí)行效率比完全生成HTML標記的CGI要高許多;PHP還可以執(zhí)行編譯后代碼,編譯可以達到加密和優(yōu)化代碼運行,使代碼運行更快。下面是小編為大家搜索整理的如何做出PHP數(shù)據(jù)餅圖,希望大家能有所收獲,更多精彩內(nèi)容請及時關(guān)注我們應屆畢業(yè)生考試網(wǎng)!
源代碼:
//+------------------------+
//| pie3dfun.PHP//公用函數(shù) |
//+------------------------+
define("ANGLE_STEP", 5); //定義畫橢圓弧時的角度步長
function draw_getdarkcolor($img,$clr) //求$clr對應的暗色
{
$rgb = imagecolorsforindex($img,$clr);
return array($rgb["red"]/2,$rgb["green"]/2,$rgb["blue"]/2);
}
function draw_getexy($a, $b, $d) //求角度$d對應的橢圓上的點坐標
{
$d = deg2rad($d);
return array(round($a*Cos($d)), round($b*Sin($d)));
}
function draw_arc($img,$ox,$oy,$a,$b,$sd,$ed,$clr) //橢圓弧函數(shù)
{
$n = ceil(($ed-$sd)/ANGLE_STEP);
$d = $sd;
list($x0,$y0) = draw_getexy($a,$b,$d);
for($i=0; $i<$n; $i++)
{
$d = ($d+ANGLE_STEP)>$ed?$ed:($d+ANGLE_STEP);
list($x, $y) = draw_getexy($a, $b, $d);
imageline($img, $x0+$ox, $y0+$oy, $x+$ox, $y+$oy, $clr);
$x0 = $x;
$y0 = $y;
}
}
function draw_sector($img, $ox, $oy, $a, $b, $sd, $ed, $clr) //畫扇面
{
$n = ceil(($ed-$sd)/ANGLE_STEP);
$d = $sd;
list($x0,$y0) = draw_getexy($a, $b, $d);
imageline($img, $x0+$ox, $y0+$oy, $ox, $oy, $clr);
for($i=0; $i<$n; $i++)
{
$d = ($d+ANGLE_STEP)>$ed?$ed:($d+ANGLE_STEP);
list($x, $y) = draw_getexy($a, $b, $d);
imageline($img, $x0+$ox, $y0+$oy, $x+$ox, $y+$oy, $clr);
$x0 = $x;
$y0 = $y;
}
imageline($img, $x0+$ox, $y0+$oy, $ox, $oy, $clr);
list($x, $y) = draw_getexy($a/2, $b/2, ($d+$sd)/2);
【如何做出PHP數(shù)據(jù)餅圖】相關(guān)文章:
PHP如何插入數(shù)據(jù)庫06-09
PHP如何創(chuàng)建數(shù)據(jù)庫07-18
如何在PHP導出excel格式數(shù)據(jù)10-18
php如何連接數(shù)據(jù)庫09-23
PHP如何使用curl實現(xiàn)數(shù)據(jù)抓取09-27
如何實現(xiàn)PHP獲取表單數(shù)據(jù)與HTML嵌入PHP腳本09-23
如何使用php獲取excel文件數(shù)據(jù)10-17