首页 理论教育PHPMVC开发实战教程绘制图形方法介绍

PHPMVC开发实战教程绘制图形方法介绍

【摘要】:GD图形处理库是基于Zend Engine的强大基础类库,网络上许多数据矢量图都是由GD库绘制的,例如网站数据统计图、股市行情分析图、员工考勤图等。当然这只是GD库的基础功能之一,事实上GD库能够处理与图片有关的多数操作,例如前面介绍的图形验证码、图片水印等都是基于GD库实现的。接下来将继续使用GD库绘制数据统计图。图11-7 GD库绘制数据图形效果改变参数conf的值将直接决定绘图的外观效果,其中width、font、filename选项为必选项。

GD图形处理库(简称GD库)是基于Zend Engine的强大基础类库,网络上许多数据矢量图都是由GD库绘制的,例如网站数据统计图股市行情分析图、员工考勤图等。当然这只是GD库的基础功能之一,事实上GD库能够处理与图片有关的多数操作,例如前面介绍的图形验证码、图片水印等都是基于GD库实现的。接下来将继续使用GD库绘制数据统计图。

要实现绘制图形,首先需要确认当前PHP环境是否已安装GD库,可以在phpinfo中查看。在确认支持后,就可以直接使用PHP函数调用相应的接口了。

与GD库操作相关的函数非常多,这里为了方便演示,将使用第三方扩展类库DrawGraph实现数据图绘制,读者可以前往http://beauty-soft.net/book/php_mvc/vendor/drawgraph.html网址下载。

解压后得到DrawGraph.class.php扩展类库文件,将该文件复制到项目Lib/ORG目录中,接下来就可以在项目中导入该类库了,如以下代码所示。

978-7-111-42852-7-Part02-654.jpg

如上述代码所示,变量data表示统计数据,DrawGraph类库在生成图形时,需要根据统计结果进行绘制,最终效果如图11-7所示。

978-7-111-42852-7-Part02-655.jpg(www.chuimin.cn)

图11-7 GD库绘制数据图形效果

改变参数conf的值将直接决定绘图的外观效果,其中width、font、filename选项为必选项。如表11-5所示。

表11-5 DrawGraph配置项

978-7-111-42852-7-Part02-656.jpg

其中width表示画布的宽度,如果为空系统则根据数据的数量进行智能计算;参数font表示字库,该文件可以在操作系统目录中获取;参数headout表示是否在浏览器中直接输出图片,如果需要保存图片,可以设置为false;参数filename表示图片名称,如果headout设置为false时,该参数不能为空(带保存路径,例如/Public/Images/t.png)。

需要注意的是,如果headout为true时,需要确保输出图片前不能有任何数据被输出;当headout设置为false时,需要确保存放目录可读可写。