利用PHP怎么生成一个曲线统计图表

  介绍

今天就跟大家聊聊有关利用PHP怎么生成一个曲线统计图表,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

& lt; PHP ?   function  line_stats_pic (value_y,宽度,美元高位,美元强劲=1美元,美元修复=0){//y值处理函数   function  line_point_y (num,宽度,美元高位,美元$ max_num_add min_num_add美元,美元y_pxdensity) {   美元才能返回=$楼层很高((num - min_num_add美元+ y_pxdensity美元)/((max_num_add - min_num_add美元)/$高));   return 才能;美元返回;   }//参数处理   美元allnum=sizeof (value_y美元);   $ max_num=max ($ value_y);,,,,,,,,,,,,,,//最大值   $ min_num=min ($ value_y);,,,,,,,,,,,,,,//最小值   美元limit_m=max_num - min_num美元;,,,,,,,,,,,,//极差   美元max_num_add=max_num + limit_m * 0.1美元;,,,,,,,,//轴最大值   美元min_num_add=min_num - limit_m * 0.1美元;,,,,,,,,//轴最小值   限制美元=max_num_add - min_num_add美元;,,,,,,,,,//极差——坐标y轴   $ y_pxdensity=(max_num_add - min_num_add美元)/美元高;,,//y轴密度   $ x_pxdensity=地板(宽/allnum美元);,,,,,,,,//x轴密度   重置(value_y美元),,,,,,,,,,,,,,,,,,//将数组指针归零   $ i=0;   foreach (value_y 美元;as  val美元){   美元才能point_y [$ i]=line_point_y (val,宽度,美元高,美元max_num_add, min_num_add美元,美元y_pxdensity);   美元才能我+ +;   }   美元zero_y=line_point_y(0,宽度,美元高,max_num_add美元,min_num_add美元,美元y_pxdensity);,,//零点的y值   美元empty_size_x=(strlen (max_num美元),祝辞,strlen (min_num美元),?,strlen (max_num美元),:,strlen (min_num美元))* 5 + 3,,,,,,,,,,,//左边空白//图片流开始   头(“内容类型:图像/png");   照片=imagecreate美元(宽+ empty_size_x + 10美元,美元高+ 13);   imagecolorallocate(图片255255255美元);,,,,,//背景色   $ color_1=imagecolorallocate(图片30144255美元);,//线条色   (color_2=imagecolorallocate美元图片,0,0,0),,,,//黑色   $ color_3=imagecolorallocate(图片194194194美元);//灰色//绘制网格   imagesetthickness(图片1),,,,,,,,,,,//网格线宽   $ y_line_width=地板(宽/100美元);,,,,,,,//纵网格线数目   y_line_density=y_line_width==0美元,?,0,:地板(宽/y_line_width美元);,//纵网格线密度   point_zero_y=zero_y 美元;祝辞,high 美元;?,high 美元;:,zero_y美元;   imagestring(图片1 empty_size_x-1美元,美元高+ 4,“0“,color_2美元);,//零点数轴标记   (i=1;小姐:美元& lt;=, y_line_width美元;美元我+ +){,,,,,//绘制纵网格线   imagesetthickness才能(图片1),,,,,,,,,,//网格线宽   imageline才能(图片,y_line_density美元* i + empty_size_x美元,0,y_line_density * i + empty_size_x美元美元,美元高,color_3美元);   imagesetthickness才能(图片2),,,,,,,,,,//轴点线宽   imageline才能(图片,y_line_density美元* i + empty_size_x美元,美元point_zero_y-4, y_line_density * i + empty_size_x美元,美元point_zero_y美元,美元color_2);   imagestring才能(图片1100美元* i + empty_size_x-5美元,高+ 4美元,美元allnum/y_line_width *我美元,美元color_2);,,//数轴标记   }   $ x_line_width=地板(高/30美元),,,,,,,,,//横网格线数目   x_line_density=x_line_width==0美元,?,0,:地板(高/y_line_width美元);,,//横网格线密度   如果(zero_y 美元;祝辞,高美元){,,,,,,,,,,,,//绘制横网格线   imagestring才能(图片美元,1 0 high-3美元,圆(min_num_add,解决美元),color_2美元);,//零点数轴标记   ,,(i=1;小姐:美元& lt;=, x_line_width美元;美元我+ +){   ,才能imagesetthickness($图片1),,,,,,,,,//网格线宽   美元,才能imageline(图片,0 + empty_size_x美元,高- x_line_density *我美元,美元宽度+ empty_size_x美元,高- x_line_density *我美元,美元color_3美元);   ,,imagesetthickness(图片美元,2),,,,,,,,,//轴点线宽   美元,才能imageline(图片,0 + empty_size_x美元,高- x_line_density *我美元,美元3 + empty_size_x美元,高- x_line_density *我美元,美元color_2美元);   ,,imagestring(图片美元,1 0高- x_line_density *我美元,美元轮(限制/x_line_width美元* i + min_num_add美元,美元修复),color_2美元);,,//数轴标记   ,,}   其他}{   imagestring才能(图片美元,1美元empty_size_x-8, zero_y美元,“0“,color_2美元);,//零点数轴标记   ,,(i=1;小姐:美元& lt;=,装天花板(x_line_width/2美元);美元我+ +){   ,才能imagesetthickness($图片1),,,,,,,,,//网格线宽   ,,imageline($图片,0 + $ empty_size_x, zero_y - x_line_density *我美元,美元宽度+ empty_size_x美元,zero_y - x_line_density *我美元,美元color_3美元);   ,,如果($ zero_y + x_line_density *小姐:美元& lt;,高美元){   ,,,imageline(图片美元0 + empty_size_x美元,美元zero_y + x_line_density *我美元,宽度+ empty_size_x美元,美元zero_y + x_line_density *我美元,美元color_3);   ,,}   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

利用PHP怎么生成一个曲线统计图表