php图形jpgraph操作实例分析


Posted in PHP onFebruary 22, 2017

本文实例讲述了php图形jpgraph操作。分享给大家供大家参考,具体如下:

<?php
include ("src/jpgraph.php");
include("src/jpgraph_bar.php");
include ("src/jpgraph_line.php");
//设置显示的数据数组;
//调用类库
//设置图像的大小
$graph = new Graph(400,200,"auto");
$graph->SetScale("textlin");
//设置图形的边距
$graph->img->SetMargin(40,180,40,40);
//设置图形的背景图片,填充方式有:BGIMG_FILLPLOT, BGIMG_FILLFRAME, BGIMG_COPY
$graph->SetBackgroundImage("abc.jpg",BGIMG_FILLPLOT);
$graph->img->SetAngle(45); //设置图形在图像中的角度
//设置背景图片的对比度,must be between -1 <= x <= 1, (0,0)=original image
$graph->AdjBackgroundImage(0,0);
//设置投影;
//$graph->SetShadow();
//设置标题
$graph->title->Set("test image");
//设置标题字体样式
$graph->title->SetFont(FF_FONT1,FS_BOLD);
//设置标题的边距
$graph->title->SetMargin(3);
//设置图列的位置
$graph->legend->Pos(0.05,0.5,"right","center");
//设置图列的投影,颜色
$graph->legend->SetShadow('darkgray@0.1');
$graph->legend->SetFillColor('lightblue@0.3');
//设置x轴的标记
$graph->xaxis->SetTickLabels($label_x);
//设置X轴的显示值的角度;
$graph->xaxis->SetLabelAngle(30);
//设置x轴标题和字体颜色
$graph->xaxis->title->Set('Year 2006');
$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->title->SetColor('white');
//设置x轴的字体和颜色
$graph->xaxis->SetFont(FF_FONT1,FS_BOLD);
$graph->xaxis->SetColor('yellow');
//设置y轴的字体和颜色
$graph->yaxis->SetFont(FF_FONT1,FS_BOLD);
$graph->yaxis->SetColor('yellow');
//设置是否显示格子。默认为显示;
//$graph->ygrid->Show(false);
//设置格子的颜色和粗细。值越小,格子越粗。
$graph->ygrid->SetColor('yellow@0.5');
//设置y轴更优美一些
$graph->yaxis->scale->SetGrace(20);
//设置图列的数据
$bplot1 = new BarPlot($datay1);
$bplot2 = new BarPlot($datay2);
//设置图列的填充颜色
$bplot1->SetFillColor('orange@0.4');
$bplot2->SetFillColor('brown@0.4');
//设置值的格式
$bplot1->value->SetFormat('%d');
//设置图列标签
$bplot1->SetLegend('Label 1');
$bplot2->SetLegend('Label 2');
//设置图列在图中的阴影
$bplot1->SetShadow('black@0.4');
$bplot2->SetShadow('black@0.4');
//生成图列
$gbarplot = new GroupBarPlot(array($bplot1,$bplot2));
$gbarplot->SetWidth(0.9);
$graph->Add($gbarplot);
//生成图形
$graph->Stroke();
//上面所说的时在生成柱形图,当生成线性图时用下面的方法
$p1 = new LinePlot($datay);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor("red");
$p1->mark->SetWidth(4);
$p1->SetColor("blue");
$p1->SetCenter();
$p1->SetLegend("Triumph Tiger -98");
$graph->Add($p1);
$p2 = new LinePlot($data2y);
$p2->mark->SetType(MARK_STAR);
$p2->mark->SetFillColor("red");
$p2->mark->SetWidth(4);
$p2->SetColor("red");
$p2->SetCenter();
$p2->SetLegend("New tiger -99");
$graph->Add($p2);
// Style can also be specified as SetStyle([1|2|3|4]) or
// SetStyle("solid"|"dotted"|"dashed"|"lobgdashed")
$lineplot->SetStyle("dashed");//设置线的样式
$graph->yaxis->scale->SetGrace(20); //设置y轴更优美一些
?>

2.柱形图和饼状图举例

if($tag == 1)
{
$graph = new Graph(600,400,"auto");
$graph->SetScale("textlin");
$graph->setMarginColor('lightblue');
$graph->SetShadow();
$graph->setMargin(30,100,30,60);
//设置标题;
$graph->title->set("文章分类汇总");
$graph->title->SetMargin(3);
$graph->title->setfont(FF_SIMSUN,FS_BOLD);
$graph->title->setcolor('black@0.5');
$graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD);
$graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD);
$graph->xaxis->SetFont(FF_SIMSUN,FS_NORMAL);
$graph->xaxis->SetColor('darkblue','black');
$graph->xaxis->SetTickLabels($name);
$graph->xaxis->SetLabelAngle(30);
$bplot = new BarPlot($article_num);
$bplot->SetFillColor("orange");
$bplot->value->SetFormat('%d');
$bplot->SetShadow('darkgray');
$bplot->value->show();
$graph->legend->SetFont(FF_SIMSUN,FS_BOLD);
$bplot->SetLegend("文章数");
$graph->Add($bplot);
$graph->Stroke();
}
else
{
$graph1 = new PieGraph(600,400,"auto");
$graph1->SetScale("textlin");
$graph1->SetShadow();
$graph1->title->setFont(FF_SIMSUN,FS_BOLD);
$graph1->title->set("用户文章饼形图");
$graph1->setMargin(30,100,30,60);
$p1 = new pieplot3d($article_num);
$p1->setAngle(80);
$p1->setsize(0.5);
$p1->setShadow();
$p1->ExplodeSlice(2);
$p1->SetCenter(0.4);
$graph1->legend->SetFont(FF_SIMSUN,FS_NORMAL);
$graph1->legend->setshadow();
$p1->SetLegends($name);
$graph1->Add($p1);
$graph1->Stroke();
}
//生成本地图片
$graph->Stroke("路径/文件名.png");

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

PHP 相关文章推荐
初学CAKEPHP 基础教程
Nov 02 PHP
PHP数组内存耗用太多问题的解决方法
Apr 05 PHP
CI框架验证码CAPTCHA辅助函数用法实例
Nov 05 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
Nov 11 PHP
PHP设置images目录不充许http访问的方法
Nov 01 PHP
php实现留言板功能(代码详解)
Mar 28 PHP
PHP实现webshell扫描文件木马的方法
Jul 31 PHP
PHP定义字符串的四种方式详解
Feb 06 PHP
PHP设计模式之建造者模式定义与用法简单示例
Aug 13 PHP
Laravel学习笔记之Artisan命令生成自定义模板的方法
Nov 22 PHP
PHP利用递归函数实现无限级分类的方法
Mar 22 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
Feb 28 PHP
关于php几种字符串连接的效率比较(详解)
Feb 22 #PHP
php可变长参数处理函数详解
Feb 22 #PHP
php操作access数据库的方法详解
Feb 22 #PHP
Smarty3配置及入门语法
Feb 22 #PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 #PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 #PHP
PHP编辑器PhpStrom运行缓慢问题
Feb 21 #PHP
You might like
基于mysql的bbs设计(三)
2006/10/09 PHP
基于jQueryUI和Corethink实现百度的搜索提示功能
2016/11/09 PHP
laravel与thinkphp之间的区别与优缺点
2021/03/02 PHP
Jquery中显示隐藏的实现代码分析
2011/07/26 Javascript
深入理解javaScript中的事件驱动
2013/05/21 Javascript
js的.innerHTML = &quot;&quot;IE9下显示有错误的解决方法
2013/09/16 Javascript
js中的push和join方法使用介绍
2013/10/08 Javascript
JS组件Bootstrap dropdown组件扩展hover事件
2016/04/17 Javascript
JS onkeypress兼容性写法详解
2016/04/27 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
jquery实现下拉框多选方法介绍
2017/01/03 Javascript
解决option标签selected=&quot;selected&quot;属性失效的问题
2017/11/06 Javascript
Vue组件通信之Bus的具体使用
2017/12/28 Javascript
Vue项目移动端滚动穿透问题的实现
2020/05/19 Javascript
js canvas实现俄罗斯方块
2020/10/11 Javascript
Python显示进度条的方法
2014/09/20 Python
python格式化字符串实例总结
2014/09/28 Python
Python读取键盘输入的2种方法
2015/06/16 Python
Python中字典的浅拷贝与深拷贝用法实例分析
2018/01/02 Python
解决pandas使用read_csv()读取文件遇到的问题
2018/06/15 Python
python实现微信机器人: 登录微信、消息接收、自动回复功能
2019/04/29 Python
Python实现Mysql数据统计及numpy统计函数
2019/07/15 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
Python Django模板之模板过滤器与自定义模板过滤器示例
2019/10/18 Python
Python random模块制作简易的四位数验证码
2020/02/01 Python
HTML5各种头部meta标签的功能(推荐)
2017/03/13 HTML / CSS
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
软件测试面试题
2015/10/21 面试题
在职人员函授期间自我评价分享
2013/11/08 职场文书
办公室岗位职责
2014/02/12 职场文书
毕业生如何写自荐信
2014/03/26 职场文书
单位婚育证明范本
2014/11/21 职场文书
2015年平安创建工作总结
2015/04/29 职场文书
烛光里的微笑观后感
2015/06/17 职场文书
决心书格式范文
2015/09/23 职场文书
python析构函数用法及注意事项
2021/06/22 Python