使用GD2函数实现图表分析产品数据(PHP图形图像的典型应用教程6)

黄舟
发布: 2023-03-07 16:20:02
原创
1947 人浏览过

使用GD2函数实现图表分析产品数据(PHP图形图像的典型应用教程6)

利用图表来分析产品数据信息是目前大中小企业最常用的数据管理模式,通过图表来分析产品不仅可以一目了然,而且可以对产品下一步规划及时作出决策,快速提高企业的经济效益,由此可见,利用图表来分析产品的数据走势是企业快速发展的根基,本篇就是介绍图表分析产品数据!

在上一篇《使用GD2函数向图表中添加行和列标签(PHP图形图像的典型应用教程5)》我们介绍了图表中添加行和列标签,那么使用GD2函数实现图表分析产品数据,跟上一篇的内容是分不开的,要使用到上一篇的内容,下面我们来详细介绍!

技术要点

主要应用到array()函数和imagestring()函数向图表中添加各类产品数据信息,其中,imagestring()函数我们在删过一篇文章中有详细的介绍,array()在数组专题中也有详细介绍,在这里我们就不多做详细的介绍了,不清楚的小伙伴们可以去看看我们之前的文章和专题!

实现过程

(1) 通过 imagecreatepng()函数载入一张图片,利用数组自定义两个常量,具体代码如下;

登录后复制

(2) 在创建完背景图像后,可以再背景上面进行各种操作,在进行操作之前必须调用 imagecolorallcate()函数定义绘制图像的颜色,具体代码如下:

$black = imagecolorallocate($im,255,0,0); //设置颜色值,
登录后复制

(3) 定义完颜色值后,应用 imageline()函数绘制 X 轴 和 Y 轴 的坐标,在应用 imagestring()函数输出字符 X 和 Y,具体代码如下:

imageline($im,0,20,0,532,$black);         //设置Y轴纵坐标
imageline($im,0,437,585,437,$black);      //设置X轴纵坐标
imagestring($im,10,0,5,"Y",$black);       //输出字符Y
imagestring($im,10,560,422,"X",$black);   //输出字符X
登录后复制

(4) 创建完坐标后,定义 4 个变量并为其赋初始值,应用 for 循环语句循环输出标签文字,其中没标签文字的输出通过调用 imagestring()函数实现,具体代码如下:

$x = 30;
$y = 209;
$x_width = 61;
$y_ht = 0;
for ($i=0;$i<7;$i++){
    imagestring($im,5,$x-1,$y+180,$month[$i],$black); //设置语言与 X 轴之间的距离
    imagestring($im,5,$x-1,$y+200,$data[$i],$black);  //设置语言与数量之间的距离
    $x +=($x_width+20);                               //设置语言与语言,数量之间的宽度为20像素 
}
登录后复制

(5) 需要输出图形到浏览器,通常的做法是保存到一个文件并输出到浏览器。本实例应用imagepng()函数输出图像代码如下:

imagepng($im,"a.png");
echo  "";                //输出图像
登录后复制

注意:

imagepng()函数是以png 格式输出内容发送到浏览器,若用户要求以不同的格式输出,应该调用其相应的函数,如意GIF 格式发送,应该调用 imagegif()函数。

(6) 在完成图像处理后,需要调用 imagedestroy()函数释放图像的资源,具体代码如下:

imagedestroy($im);                       //释放图像资源
登录后复制

完成以上的步骤,然后在浏览器输出地址,按下回车键,得到以下图表结果:

76.png

关于PHP图形图像处理到这里我们就介绍完了,大家有什么补充的可以再文章留言,我们会及时补充内容,那么我们下个专题不见不散!

以上是使用GD2函数实现图表分析产品数据(PHP图形图像的典型应用教程6)的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!