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 相关文章推荐
PHP5 面向对象程序设计
Feb 13 PHP
ajax php 实现写入数据库
Sep 02 PHP
PHP PDO函数库详解
Apr 27 PHP
基于php权限分配的实现代码
Apr 28 PHP
PHP删除数组中特定元素的两种方法
Jul 02 PHP
php实现的SESSION类
Dec 02 PHP
php中JSON的使用方法
Apr 30 PHP
php实现无限级分类查询(递归、非递归)
Mar 10 PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 PHP
PHP利用DWZ.CN服务生成短网址
Aug 11 PHP
Laravel5.4简单实现app接口Api Token认证方法
Aug 29 PHP
如何运行/调试你的PHP代码
Oct 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
thinkphp的c方法使用示例
2014/02/24 PHP
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
2014/11/18 PHP
php基于curl实现随机ip地址抓取内容的方法
2016/10/11 PHP
php二维码生成以及下载实现
2017/09/28 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
Jquery拖拽并简单保存的实现代码
2010/11/28 Javascript
JavaScript中的变量定义与储存介绍
2014/12/31 Javascript
微信支付如何实现内置浏览器的H5页面支付
2015/09/25 Javascript
jQuery往返城市和日期查询实例讲解
2015/10/09 Javascript
js输入框使用正则表达式校验输入内容的实例
2017/02/12 Javascript
利用Console来Debug的10个高级技巧汇总
2018/03/26 Javascript
解决ng-repeat产生的ng-model中取不到值的问题
2018/10/02 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
2018/10/10 Javascript
Node.js实现用户评论社区功能(体验前后端开发的乐趣)
2019/05/09 Javascript
vue-router源码之history类的浅析
2019/05/21 Javascript
koa2+vue实现登陆及登录状态判断
2019/08/15 Javascript
node使用async_hooks模块进行请求追踪
2021/01/28 Javascript
[02:33]2018 DOTA2亚洲邀请赛回顾视频 再次拾起那些美妙的时刻
2018/04/10 DOTA
Cpy和Python的效率对比
2015/03/20 Python
使用Python的Flask框架实现视频的流媒体传输
2015/03/31 Python
python实现指定字符串补全空格的方法
2015/04/30 Python
django DRF图片路径问题的解决方法
2018/09/10 Python
python使用多进程的实例详解
2018/09/19 Python
python flask web服务实现更换默认端口和IP的方法
2019/07/26 Python
基于python3实现倒叙字符串
2020/02/18 Python
Django def clean()函数对表单中的数据进行验证操作
2020/07/09 Python
python 使用elasticsearch 实现翻页的三种方式
2020/07/31 Python
html5使用canvas画一条线
2014/12/15 HTML / CSS
护理专业大学生自我推荐信
2014/01/25 职场文书
《青山处处埋忠骨》教学反思
2014/04/22 职场文书
员工考核评语大全
2014/04/26 职场文书
怀念母亲教学反思
2014/04/28 职场文书
大学生求职信例文
2014/06/29 职场文书
付款委托书范本
2014/10/05 职场文书
2015年房产销售工作总结范文
2015/05/22 职场文书