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 大数据量及海量数据处理算法总结
May 07 PHP
php5.3中连接sqlserver2000的两种方法(com与ODBC)
Dec 29 PHP
ThinkPHP中的关联模型注意点
Jun 16 PHP
php中的动态调用实例分析
Jan 07 PHP
9条PHP编程小知识及易犯的小错误
Jan 22 PHP
PHP之正则表达式捕获组与非捕获组(详解)
Jul 29 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
Oct 10 PHP
Zend Framework实现留言本分页功能(附demo源码下载)
Mar 22 PHP
PHP自定义函数实现格式化秒的方法
Sep 14 PHP
ThinkPHP中session函数详解
Sep 14 PHP
php实现socket推送技术的示例
Dec 20 PHP
php实现断点续传大文件示例代码
Jun 19 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 STRING 陷阱原理说明
2010/07/24 PHP
PHP面向对象概念
2011/11/06 PHP
服务器上配置PHP运行环境教程
2015/02/12 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
JavaScript方法和技巧大全
2006/12/27 Javascript
推荐11款jQuery开发的复选框和单选框美化插件
2011/08/02 Javascript
javascript跑马灯悬停放大效果实现代码
2012/12/12 Javascript
javascript中定义类的方法汇总
2014/12/28 Javascript
Node.js抓取中文网页乱码问题和解决方法
2015/02/10 Javascript
jquery插件pagination实现无刷新ajax分页
2015/09/30 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
ES6使用Set数据结构实现数组的交集、并集、差集功能示例
2017/10/31 Javascript
详解webpack babel的配置
2018/01/09 Javascript
JS实现指定区域的全屏显示功能示例
2019/04/25 Javascript
JS实现拼图游戏
2021/01/29 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
jQuery实现穿梭框效果
2021/01/19 jQuery
老生常谈Python序列化和反序列化
2017/06/28 Python
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
利用Python如何生成hash值示例详解
2017/12/20 Python
对python中字典keys,values,items的使用详解
2019/02/03 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
python3使用matplotlib绘制条形图
2020/03/25 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
Python实现报警信息实时发送至邮箱功能(实例代码)
2019/11/11 Python
从python读取sql的实例方法
2020/07/21 Python
python实现网页录音效果
2020/10/26 Python
西班牙伏林航空公司:Vueling
2016/08/05 全球购物
英国高级百货公司:Harvey Nichols
2017/01/29 全球购物
一套SQL笔试题
2016/08/14 面试题
货代行业个人求职简历的自我评价
2013/10/22 职场文书
小学优秀教育工作者事迹材料
2014/05/09 职场文书
2014年导购员工作总结
2014/11/18 职场文书
租车协议书
2015/01/27 职场文书
关于运动会的宣传稿
2015/07/23 职场文书