php使用Jpgraph创建折线图效果示例


Posted in PHP onFebruary 15, 2017

本文实例讲述了php使用Jpgraph创建折线图效果。分享给大家供大家参考,具体如下:

在企业运营中,经常需要对各种数据进行统计,利用图表动态分析不同的数据表中的数据,可以使数据显示的更加直观。

例:应用Jpgraph技术绘制包含两种图书销售走势的折线图。

为了能够使用Jpgraph的功能,首先在程序中导入Jpgraph类库,然后创建两个数组分别表示两种图书的年度销售情况,创建Graph类的对象,并用创建的数组作为参数创建两个LinePlot类的对象。设置统计图的标题、刻度、背景色和折线颜色等参数,并将两个LinePlot对象添加到统计图对象中。

过程如下:

(1)在程序中导入Jpgraph类库及直线绘制功能。

require_once 'jpgraph/src/jpgraph.php';
require_once 'jpgraph/src/jpgraph_line.php';

(2)创建统计数据,并保存到一维数组中。

$data1 = array(89, 78, 99, 65, 92, 85, 85, 55, 64, 79, 85, 98);//设置统计数据
$data2 = array(68, 70, 69, 80, 50, 60, 75, 65, 75, 65, 80, 89);//设置统计数据

(3)创建统计图对象,并设置坐标的刻度样式

$graph = new Graph(600, 300);//创建统计图对象
$graph->SetScale('textlin');//设置刻度样式
$graph->SetY2Scale('lin');
$graph->SetShadow();//设置背景带阴影
$graph->img->SetMargin(40, 50, 20, 70);// 设置图表灰度四周边距,顺序为左右上下
$graph->title->Set(iconv('utf-8', 'GB2312//IGNORE', '图书销售走势表'));//设置走势图的标题

(4)创建LinePlot对象,并将创建后的对象添加到统计图的对象中。

$lineplot1 = new LinePlot($data1);//建立LinePlot对象
$lineplot2 = new LinePlot($data2);//建立LinePlot对象
$graph->Add($lineplot1);
$graph->AddY2($lineplot2);

(5)设置统计图和坐标轴的标题内容和文字样式,并输出统计图

$graph->xaxis->title->Set(iconv('utf-8', 'GB2312//IGNORE', "月份"));//设置x轴的标题
$graph->yaxis->title->Set(iconv('utf-8', 'GB2312//IGNORE', "book A 销售金额(万元)"));//设置y轴的标题
$graph->y2axis->title->Set(iconv('utf-8', 'GB2312//IGNORE', "book B 销售金额(万元)"));//设置y轴的标题
$graph->y2axis->title->SetMargin(20);//设置右边的title到图的距离
$graph->title->SetFont(FF_SIMSUN, FS_BOLD);//设置字体
$graph->yaxis->title->SetFont(FF_SIMSUN, FS_BOLD);
$graph->y2axis->title->SetFont(FF_SIMSUN, FS_BOLD);
$graph->xaxis->title->SetFont(FF_SIMSUN, FS_BOLD);
$lineplot1->SetColor('red');//设置颜色
$lineplot2->SetColor('blue');
$lineplot1->SetLegend('book A');//绑定
$lineplot2->SetLegend('book B');
$graph->legend->SetLayout(LEGEND_HOR);
$graph->legend->Pos(0.4, 0.95, 'center', 'bottom');
//图例文字框的位置 0.4,0.95 是以右上角为基准的,0.4是距左右距离,0.95是上下距离。
$graph->Stroke();//输出

运行结果如下:

php使用Jpgraph创建折线图效果示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP文件读写操作之文件写入代码
Jan 13 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
Jun 07 PHP
Drupal7连接多个数据库及常见问题解决
Mar 02 PHP
Yii调试SQL的常用方法
Jul 09 PHP
两千行代码的PHP学习笔记汇总
Oct 05 PHP
php随机取mysql记录方法小结
Dec 27 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
Feb 02 PHP
php socket通信(tcp/udp)实例分析
Feb 14 PHP
php+jQuery递归调用POST循环请求示例
Oct 14 PHP
PHP实现的最大正向匹配算法示例
Dec 19 PHP
php语法检查的方法总结
Jan 21 PHP
解决Laravel 使用insert插入数据,字段created_at为0000的问题
Oct 11 PHP
php使用Jpgraph创建3D饼形图效果示例
Feb 15 #PHP
PHP反射机制原理与用法详解
Feb 15 #PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
Feb 15 #PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
Feb 15 #PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
Feb 15 #PHP
Yii2中hasOne、hasMany及多对多关联查询的用法详解
Feb 15 #PHP
详解配置 Apache 服务器支持 PHP 文件的解析
Feb 15 #PHP
You might like
PHP函数extension_loaded()用法实例
2015/01/19 PHP
PHP实现自动识别Restful API的返回内容类型
2015/02/07 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
PHP实现的随机红包算法示例
2017/08/14 PHP
50个优秀经典PHP算法大集合 附源码
2020/08/26 PHP
offsetParent 算法分析
2010/04/05 Javascript
善用事件代理,警惕闭包的性能陷阱。
2011/01/20 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
javascript的几种继承方法介绍
2016/03/22 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
vue项目中axios请求网络接口封装的示例代码
2018/12/18 Javascript
jQuery表单元素过滤选择器用法实例分析
2019/02/20 jQuery
Javascript实现鼠标移入方向感知
2020/06/24 Javascript
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
Python ORM框架SQLAlchemy学习笔记之安装和简单查询实例
2014/06/10 Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
2018/05/02 Python
django缓存配置的几种方法详解
2018/07/16 Python
详解Python:面向对象编程
2019/04/10 Python
Django自定义全局403、404、500错误页面的示例代码
2020/03/08 Python
Python unittest框架操作实例解析
2020/04/13 Python
Python如何使用队列方式实现多线程爬虫
2020/05/12 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
2020/12/01 Python
Python爬虫后获取重定向url的两种方法
2021/01/19 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
大学生求职中的自我评价
2013/10/01 职场文书
室内设计专业个人的自我评价
2013/10/19 职场文书
机械制造毕业生求职信
2014/03/03 职场文书
小学生安全责任书
2014/07/25 职场文书
保密法制宣传月活动总结
2015/05/07 职场文书
2016应届大学生自荐信模板
2016/01/28 职场文书
《乌鸦喝水》教学反思
2016/02/19 职场文书
Mysql 性能监控及调优
2021/04/06 MySQL
Redis 彻底禁用RDB持久化操作
2021/07/09 Redis
PHP RabbitMQ消息列队
2022/05/11 PHP