PHP图形操作之Jpgraph学习笔记


Posted in PHP onDecember 25, 2015

本文实例讲述了PHP图形操作之Jpgraph学习笔记。分享给大家供大家参考,具体如下:

一、Jpgraph安装配置

下载Jpgraph安装包

解压后放置磁盘中,(最好是放在和网页一起)

修改php.ini文件:

1、内存  memory_limit=X,至少为32M

2、执行时间  max_execution_time=X,对于复杂的图片加载时需要较多的时间,根据图片的复杂度做相应的修改

3、缓存  output_buffering  注释掉缓存,便于调试

二、使用Jpgraph创建图形的基本步骤(必要的)

1、包含所需要的类库文件

require_once();

2、初始化数据

$data=array();

可以是php程序中的固定数据,即静态数据,直接得到
可以是存储在文本文件中的数据
可以是存储在数据库中的数据
可以是通过URL参数传递的数据( GET 或 POST方式)

3、 创建Graph类实例

$graph=new Graph();

可以在此设置图形的尺寸

4、设置标题、x轴标题、y轴标题的内容,及其字体、颜色、位置等

5、创建对应的图实例

可以是折线图、柱形图、饼状图,3d等

6、将数据添加到图形上

$graph->Add();

7、显示图片

$graph->Stroke();

至此一个简单的图形就完成了

注意:

中文字体乱码

Gpgraph默认显示汉字时是把汉字编码认为gb2312,转化为utf-8以后再显示,如果文件的编码方式是gb2312,只需把SetFont()方法的第一个参数设置为FF_SIMSUN即可
如果是utf-8编码的,需要先把汉字编码转化为gb2312,这样汉字才能正常显示
转换编码方式可以使用  iconv("UTF-8","gb2312",$x);

一些常用的方法:

$graph->title->Set('设置图表的标题');
$graph->tabtitle->Set('设置图片头部文字');
$graph->xaxis->title->Set("设置X轴的标题");
$graph->yaxis->title->Set("设置Y轴的标题");
$graph->SetScale('textlin');//设置刻度值类型
$graph->img->SetMargin(50,40,40,55);//边框间距(左右上下)
$graph->title->SetFont(FF_SIMSUN,FS_BOLD,12);//标题字体
$graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD,10);
$graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD,10);
$graph->xaxis->SetFont(FF_SIMSUN,FS_BOLD,12);//坐标柱上的字体
$graph->yaxis->SetFont(FF_SIMSUN,FS_BOLD,12);
$graph->title->SetColor('red'); ///标题颜色
$graph->xaxis->title->SetColor('red');
$graph->yaxis->title->SetColor('red');
$graph->xaxis->title->SetMargin(20);//距离坐标轴的距离
$graph->yaxis->title->SetMargin(20);//距离Y轴的距离
$linepot->SetColor('red');//折线的颜色(折线图)
$linepot->SetWeight(2);//折线的宽度
$linepot->value->SetFormat('%0.1f'); //值的格式化
$linepot->value->show(true);//显示值
$graph->SetBackGroundImage ( );设置背景
$graph->SetMarginColor('lightblue');//设置图形颜色
$graph->SetShadow();//
$graph->Set3DPerspecttive(); //设置3d效果图
/*倾斜3D效果 
 1、' SKEW3D_UP '
 2、' SKEW3D_DOWN'
 3、' SKEW3D_LEFT'
 4、' SKEW3D_RIGHT'*/
$p1->SetTheme('water');//设置样式
$p1->SetCenter(0.5,0.55);//设置图形位置
$graph->legend->Pos(0.1,0.9);//设置注释文字的位置
$graph->legend->SetFont(FF_SIMSUN,FS_BOLD,12);//设置注释文字的字体

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

PHP 相关文章推荐
在apache下限制每个虚拟主机的并发数!!!!
Oct 09 PHP
php的计数器程序
Oct 09 PHP
我的论坛源代码(二)
Oct 09 PHP
15种PHP Encoder的比较
Apr 17 PHP
pw的一个放后门的方法分析
Oct 08 PHP
关于IIS php调用com组件的权限问题
Jan 11 PHP
PHP面向对象之旅:深入理解static变量与方法
Jan 06 PHP
php使用curl获取https请求的方法
Feb 11 PHP
PHP计算加权平均数的方法
Jul 16 PHP
PHP会话控制实例分析
Dec 24 PHP
PHP ADODB实现事务处理功能示例
May 25 PHP
Laravel5.0+框架邮件发送功能实现方法图文与实例详解
Apr 23 PHP
php实现scws中文分词搜索的方法
Dec 25 #PHP
php自定义分页类完整实例
Dec 25 #PHP
php导出生成word的方法
Dec 25 #PHP
大家都应该掌握的PHP关联数组使用技巧
Dec 25 #PHP
[原创]PHP实现逐行删除文件右侧空格的方法
Dec 25 #PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
Dec 25 #PHP
php通过淘宝API查询IP地址归属等信息
Dec 25 #PHP
You might like
php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
2014/06/10 PHP
PHP的拦截器实例分析
2014/11/03 PHP
php中mysql操作buffer用法详解
2015/03/19 PHP
php实现处理输入转义字符的代码
2015/11/08 PHP
Yii基于CActiveForm的Ajax数据验证用法示例
2016/07/14 PHP
php写app接口并返回json数据的实例(分享)
2017/05/20 PHP
浅谈Laravel模板实体转义带来的坑
2019/10/22 PHP
JS长整型精度问题实例分析
2015/01/13 Javascript
Select下拉框模糊查询功能实现代码
2016/07/22 Javascript
js实现图片加载淡入淡出效果
2017/04/07 Javascript
node.js中fs文件系统目录操作与文件信息操作
2018/02/24 Javascript
vue生命周期实例小结
2018/08/15 Javascript
vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)
2018/10/24 Javascript
require.js 加载过程与使用方法介绍
2018/10/30 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
Python实现Linux命令xxd -i功能
2016/03/06 Python
Python代码实现KNN算法
2017/12/20 Python
使用python编写简单的小程序编译成exe跑在win10上
2018/01/15 Python
详解Python3的TFTP文件传输
2018/06/26 Python
python3.x实现base64加密和解密
2019/03/28 Python
python 批量修改 labelImg 生成的xml文件的方法
2019/09/09 Python
Python2与Python3的区别详解
2020/02/09 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
2020/05/03 Python
Python enumerate() 函数如何实现索引功能
2020/06/29 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
英国的一家创新礼品和小工具零售商:Menkind
2019/08/24 全球购物
俄罗斯品牌服装和鞋子的在线商店:KUPIVIP
2019/10/27 全球购物
就业推荐自我鉴定
2013/10/06 职场文书
教师暑期培训感言
2014/08/15 职场文书
年度优秀员工获奖感言
2014/08/15 职场文书
我的中国梦演讲稿初中篇
2014/08/19 职场文书
英语教育专业毕业生求职信
2014/08/28 职场文书
颐和园英文导游词
2015/01/30 职场文书
上市公司董事长岗位职责
2015/04/16 职场文书
安全学习心得体会范文
2016/01/18 职场文书
高中议论文(范文2篇)
2019/08/19 职场文书