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 相关文章推荐
php 高性能书写
Dec 11 PHP
php中使用parse_url()对网址进行解析的实现代码(parse_url详解)
Jan 03 PHP
dedecms中使用php语句指南
Nov 13 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
Jan 22 PHP
php数组去除空值函数分享
Feb 02 PHP
PHP如何实现Unicode和Utf-8编码相互转换
Jul 29 PHP
使用PHPCMS搭建wap手机网站
Sep 20 PHP
php提交post数组参数实例分析
Dec 17 PHP
php使用curl实现简单模拟提交表单功能
May 15 PHP
PHP文字转图片功能原理与实现方法分析
Aug 31 PHP
PHP 的Opcache加速的使用方法
Dec 29 PHP
php curl批处理实现可控并发异步操作示例
May 09 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开发实现微信退款功能示例
2017/11/25 PHP
MSN消息提示类
2006/09/05 Javascript
jquery 操作表格实现代码(多种操作打包)
2011/03/20 Javascript
常用的JavaScript验证正则表达式汇总
2013/11/26 Javascript
javascript删除字符串最后一个字符
2014/01/14 Javascript
jquery的clone方法应用于textarea和select的bug修复
2014/06/26 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
javascript实现确定和取消提示框效果
2015/07/10 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
2015/09/22 Javascript
基于javascript html5实现3D翻书特效
2016/03/14 Javascript
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
JavaScript 中使用 Generator的方法
2017/12/29 Javascript
JS获取子节点、父节点和兄弟节点的方法实例总结
2018/07/06 Javascript
webpack4手动搭建Vue开发环境实现todoList项目的方法
2019/05/16 Javascript
layui type2 通过url给iframe子页面传值的例子
2019/09/06 Javascript
js实现弹窗猜数字游戏
2020/11/26 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
深入理解Python 代码优化详解
2014/10/27 Python
Python内置函数Type()函数一个有趣的用法
2015/02/18 Python
Python登录并获取CSDN博客所有文章列表代码实例
2017/12/28 Python
python删除过期log文件操作实例解析
2018/01/31 Python
python+pandas+时间、日期以及时间序列处理方法
2018/07/10 Python
Python爬虫使用浏览器cookies:browsercookie过程解析
2019/10/22 Python
python抓取多种类型的页面方法实例
2019/11/20 Python
django中cookiecutter的使用教程
2020/12/03 Python
next在python中返回迭代器的实例方法
2020/12/15 Python
美国最受欢迎的度假目的地优惠套餐:BookVIP
2018/09/27 全球购物
外语系大学生自荐信范文
2014/03/01 职场文书
室内趣味活动方案
2014/08/24 职场文书
喝酒驾驶检讨书
2014/10/01 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
2014年环保局工作总结
2014/12/11 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
教师继续教育反思周记
2015/06/25 职场文书
互联网的下一个风口:新的独角兽将诞生
2019/08/02 职场文书
Nginx限流和黑名单配置
2022/05/20 Servers