利用Jpgraph创建3D饼形图

用Jpgraph类库制作统计图功能及其强大,不仅可以绘制平面图形,而且可以绘制具有3D效果的图形。直接使用GD2函数库可以绘制出各种图形,当然也包括3D饼图,但使用GD2函数绘制3D图形要花费大量的时间,而且相对复杂,而采用Jpgraph类库绘制3D饼图却十分方便、快捷。

例:使用Jpgraph创建3D饼图进行部门业绩比较。

具体步骤如下:

(1)在程序中导入Jpgraph类库及饼图绘制功能。

require_once 'jpgraph/src/jpgraph.php';         //导入Jpgraph类库
require_once 'jpgraph/src/jpgraph_pie.php';     //导入Jpgraph类库的饼形图功能
require_once 'jpgraph/src/jpgraph_pie3d.php';   //导入Jpgraph类库的3D饼形图功能

(2)创建数值型数组作为统计数据

$data = array(89, 78, 99, 65, 92);    //设置统计数据

(3)创建统计图对象,并对统计图的标题内容、字体进行设置。

$graph = new PieGraph(600, 300);
$graph->SetShadow();
$graph->title->Set(iconv('utf-8', 'GB2312//IGNORE', '部门业绩比较表'));
$graph->title->SetFont(FF_SIMSUN, FS_BOLD);

(4)创建3D饼图对象并输入统计图

$pieplot = new PiePlot3D($data);   //创建3D饼图对象
$pieplot->SetCenter(0.5, 0.5);
$department = array('ASP', 'JSP', 'PHP', '.NET', 'C++');//设置文字框对应的内容
$pieplot->SetLegends($department);
$graph->legend->SetFont(FF_SIMSUN, FS_BOLD);//设置字体
$graph->legend->SetLayout(LEGEND_HOR);
$graph->legend->Pos(0.5, 0.98, 'center', 'bottom');//图例文字框的位置
$graph->Add($pieplot);//将3D饼图添加到统计图对象中
$graph->Stroke();//输出图像

运行结果如下:

时间: 2024-12-16 11:50:19

利用Jpgraph创建3D饼形图的相关文章

利用Jpgraph创建柱状图展示年度收支表

应用GD2库可以创建各式各样的图像,但是制作复杂的统计图形,仅通过GD2函数库来实现,则显得非常繁琐.PHP从诞生走向成熟经历了多次变革,在这期间,许多组织机构都开发了PHP的框架和类库.Jpgraph图形类库就是其中非常实用.流行的代表,不仅功能强大,而且操作简单. 例如:应用Jpgraph创建柱状图展示年度收支情况. (1)将Jpgraph类库,首相应该,下载该类库的压缩包,下载完毕后解压到项目所在目录. 下载地址:http://download.csdn.net/detail/qq_286

利用Jpgraph创建折线图

在企业运营中,经常需要对各种数据进行统计,利用图表动态分析不同的数据表中的数据,可以使数据显示的更加直观. 例:应用Jpgraph技术绘制包含两种图书销售走势的折线图. 为了能够使用Jpgraph的功能,首先在程序中导入Jpgraph类库,然后创建两个数组分别表示两种图书的年度销售情况,创建Graph类的对象,并用创建的数组作为参数创建两个LinePlot类的对象.设置统计图的标题.刻度.背景色和折线颜色等参数,并将两个LinePlot对象添加到统计图对象中. 过程如下: (1)在程序中导入Jp

利用Flare3D和Stage3D创建3D

Flare3D 是一款功能强大的引擎,它使得 Flash 中的 3D 内容管理变得更为简便. 它的设计宗旨是提供一个完美的开发工作流程,以便你能够获得事半功倍的效果. 本教程侧重讨论在 Flash 中创建 3D 游戏所需的 ActionScript 代码:但本范例项目不包括创建和导出游戏组件文件的过程. 在完成本教程之后,你将了解在Flash中开发一个完整 3D 游戏所需的基本概念. 在本范例中,你将使用 Stage3D 和 Flare3D 处理用于创建一个名称为 Yellow Planet 的

css3实践—创建3D立方体

css3实践-创建3D立方体 要想实现3D的效果,其实非常简单,只需指定一个元素为容器并设置transform-style:preserve-3d,那么它的后代元素便会有3D效果.不过有很多需要注意的地方,这里把我学习的方法,过程分享给大家.再讲知识点之前,还是先弄清楚3D的坐标系吧,从网上搜了一张经典坐标系图,供大家回顾一下. 1.3D试图 transform-style:flat(默认,二维效果) / preserve-3d(三维效果).设置一个元素的transform-style:pres

WPF换肤之八:创建3D浏览效果

原文:WPF换肤之八:创建3D浏览效果 上节中,我们展示了WPF中的异步以及界面线程交互的方式,使得应用程序的显示更加的流畅.这节我们主要讲解如何设计一个具有3D浏览效果的天气信息浏览器. 效果显示 下面我们看截图: 是不是能够感受到一种与众不同的感觉.如果你能够感受到它的与众不同,这也是我本节所要达到的目标. 实现方式 上面的只是一个简单的3D图形,它的产生需要依赖于WPF中的MeshGeometry3D对象,这个对象按照微软官方的解释就是用于生成3D形状的三角形基元,它有三个比较重要的属性:

css3创建3D场景

浏览器本身是一个2维平面,对于3D的情况,实际上是增加了一个维度(深度),所以我们需要创建一个3D场景.这时浏览器不仅仅是一个平面了,更像是一个窗口,我们透过这个窗口去观察里面的三维世界.所谓的创建3D场景,就是告诉浏览器,我们是在这个窗口的哪个角度对这个3维世界进行观察,窗口里的3维物体距离这个窗口到底有多远. 设置好3D场景后,浏览器中的物体虽然已经变成是3维的了,但是如果我们不进行任何设置,他们看起来还是和二维的效果是一样的.所以我们需要使用一个新的属性 transform 来对这些元素进

3D语音天气球(源码分享)——通过天气服务动态创建3D球

转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 这个项目准备分四部分介绍: 一:创建可旋转的"3D球":3D语音天气球(源码分享)--创建可旋转的3D球 二:通过天气服务,从网络获取时实天气信息并动态生成"3D球" 三:Android语音服务和Unity的消息传递 四:Unity3D端和Android端的结合 关于项目的详细介绍和3D球的创建请看上面第一篇文章(重要) 今天主要讲解如何通过获取

cocos2d-x在Lua中添加3d模型创建3D动画

--3d模型和3D动画的创建 require"Cocos2d" local Sprite3DScene=class("Sprite3DScene",function() return cc.Scene:create() end) --添加create函数 function Sprite3DScene:create() local scene=Sprite3DScene.new() scene:addChild(scene:init()) return scene e

通过virt-manager 利用NFS创建、迁移虚拟机2

前面一篇文章介绍了利用NFS创建虚拟机的过程,本文就介绍下如何利用NFS对虚拟机进行动态迁移. 动态迁移就是把一台虚拟机在不停止其运行的情况下迁移到另一台物理机上.这看起来似乎不太可能,不过还好kvm本身就支持者一特性,且libvirt也提供了相应的API,我们可以通过virsh命令或者virt-manager对虚拟机进行动态迁移. 进行动态迁移由于不间断虚拟机的运行,所以其所需的条件就必要多: 1.两台虚拟机的虚拟化环境必须一致,libvirt版本.qemu版本. 2.两台物理机必须有着相同的