Rumah  >  Artikel  >  pembangunan bahagian belakang  >  如何用php作线形图的函数

如何用php作线形图的函数

高洛峰
高洛峰asal
2016-12-02 11:20:531033semak imbas

很高兴大家对php(做为现在的主流开发语言)如此的情有独钟! 
下面就给大家介绍php(做为现在的主流开发语言)作线形图的函数: 

/* 
函数说明 
$data:y轴数据(数组) 
$graphdata:y轴数据--百分比(数组) 
$label:x轴数据(数组) 
$height:图像高度 
$width:图像宽度 
$font:字号 
$dot:决定点的大小 
$bg:背景色 
$line :线色 
$text :文本色 
$dotcolor:点色 
$file:输出图像文件名 
*/ 

function qximage($data , 
$graphdata, 
$label , 
$height, 
$width , 
$font, 
$dot, 
$bg, 
$line, 
$text, 
$dotcolor, 
$file) 

$jc=$height/100; 
$fontwidth= imagefontwidth ($font); 
$fontheight=imagefontheight($font); 

$image= imagecreate ($width,$height+20); 
$bg= imagecolorallocate($image ,$bg[0],$bg[1],$bg[2]); 
$line=imagecolorallocate($image ,$line[0],$line[1],$line[2]); 
$text=imagecolorallocate($image ,$text[0],$text[1],$text[2]); 
$dotcolor=imagecolorallocate($image ,$dotcolor[0],$dotcolor[1],$$dotcolor[2]); 
imageline ($image,0,0,0,$height,$line); 
imageline($image,0,$height,$width,$height,$line); 
for ($i=1;$i<11;$i++)
{
imagedashedline($image,0,$height - $jc*$i*10 ,$width ,$height -$jc*$i*10 ,$line );
imagestring ($image,$font,0,$height-$jc*$i*10,$i*10,$text);
}
for ($i=0;$i {
#echo $tmp."
";
$x1=(($width-50)/count($data))*($i)+40;
#echo $x1 ."
";
$y1=$height-$graphdata[$i]*$jc;
$x2=$x1;
$y2=$y1+$graphdata[$i]*$jc;
#echo $y1."
";
imagestring($image,$font,$x1,$y1-2*$fontheight,$graphdata[$i]."%(".$data[$i].")",$text);
imagearc ($image,$x1 ,$y1,$dot,$dot,0,360,$dotcolor);
imagefilltoborder ($image,$x1,$y1,$dotcolor,$dotcolor);
imagestring ($image,$font,$x1,$y2,$label[$i],$text);
if ($i>0) 

imageline($image,$tmpx1,$tmpy1,$x1,$y1,$line); 

$tmpx1=$x1;$tmpy1=$y1; 

imagegif ($image,$file); 

?> 

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn