PHP生成柱状图、饼状图和线性图
来源:互联网 发布:淘宝客服新人自我介绍 编辑:程序博客网 时间:2024/05/17 13:11
首先我们要介绍一下我们在这篇文章中使用的PHP类Libchart,这是个外国人(非中国国籍的地球人,被称为外国人!)写的免费类!使用起来非常简单。看出来了吧,我们是要用一个外国人写的PHP创建柱状图,饼状图,和线性图的类,来工作的。如果你要学习这个类的写法,你也可以把这个类下载下来看看外国人的思路!
我们开始吧,首先下载这个类 点击此处:下载Libchart,解压缩!
第一个用例,我们来创建一个纵向的柱状图:
首先我们包含这个类文件到我们的程序中,并且实例化这个类,程序如下:
requir_once('./Libchart/classes/libchart.php');$chart = new VerticalBarChart(500, 250);//参数表示需要创建的图像的宽和高$dataSet = new XYDataSet();//实例化一个XY轴数据对象//为这个对象增加四组数据集合,Point对象的第一个参数表示X轴坐标,第二个表示Y轴坐标$dataSet->addPoint(new Point("Jan 2005", 273));$dataSet->addPoint(new Point("Feb 2005", 321));$dataSet->addPoint(new Point("March 2005", 442));$dataSet->addPoint(new Point("April 2005", 711));//把这个数据集合传递给图形对象$chart->setDataSet($dataSet);//设置图形的标题,并把它作为一个png文件渲染$chart->setTitle("Monthly usage for www.example.com");$chart->render("generated/demo1.png");//这里需要一个路径和文件名称
就这么简单一个像下图一样美丽的柱状图就出来了。
PHP柱状图
PHP创建一个饼状图的过程和上边说的柱状图大同小异,具体实例代码如下:
$chart = new PieChart(500, 250);$dataSet = new XYDataSet();$dataSet->addPoint(new Point("Mozilla Firefox (80)", 80));$dataSet->addPoint(new Point("Konqueror (75)", 75));$dataSet->addPoint(new Point("Other (50)", 50));$chart->setDataSet($dataSet);$chart->setTitle("User agents for www.example.com");$chart->render("generated/demo2.png");
创建饼状图就一点值得说一下就是Point的参数,第一个参数是占用比例的名称,第二个是数据,并不存在XY坐标;图如下:
饼状图
创建一个线性图,这个有点和上边两个不同,就是数据集合的不同。我们也看到了XYDataSet这个数据集合,另外在这个类中还有一个数据集合XYSeriesDataSet(),这个其实是一个比XYDataSet更大的集合而已,他的元素就是 XYDataSet,看一下例子和这段创建PHP线性图的程序,你一定就明白了:
include "../libchart/classes/libchart.php";$chart = new LineChart(500, 250);$serie1 = new XYDataSet();$serie1->addPoint(new Point("06-01", 273));$serie1->addPoint(new Point("06-02", 421));$serie1->addPoint(new Point("06-03", 642));$serie1->addPoint(new Point("06-04", 799));$serie1->addPoint(new Point("06-05", 1009));$serie1->addPoint(new Point("06-06", 1106));$serie2 = new XYDataSet();$serie2->addPoint(new Point("06-01", 280));$serie2->addPoint(new Point("06-02", 300));$serie2->addPoint(new Point("06-03", 212));$serie2->addPoint(new Point("06-04", 542));$serie2->addPoint(new Point("06-05", 600));$serie2->addPoint(new Point("06-06", 850));//这些和前面的两个看起来没有什么区别,关键在下边这一段,需要自己理解一下啦:$dataSet = new XYSeriesDataSet();$dataSet->addSerie("Product 1", $serie1);$dataSet->addSerie("Product 2", $serie2);$chart->setDataSet($dataSet);$chart->setTitle("Sales for 2006");$chart-> render("generated/demo3.png");
画出这样一个图来:
线性图
然后,把数据交给图形实例,然后渲染图形,和创建柱状图和线性图是一样的。其实国外还有好多创建柱状图和饼状图的类程序,有的还相当的NB,例如结合flash的,结合web css的不一而足,这个用起来相对简单一点,大家尽管拿去用好了!
转载于:http://www.aayue.com/php/243.html- PHP生成柱状图、饼状图和线性图
- PHP柱状图、饼状图和线性图
- PHP柱状图、饼状图和线性图
- PHP柱状图、饼状图和线性图 并支持中文
- 如何使用PHP动态生成饼状图、柱状图和折线图
- 如何使用PHP动态生成饼状图、柱状图和折线图
- php生成柱状图
- PHP+table生成柱状图
- 使用jfreechart生成柱状图、折线图、和饼状图
- C#中用GDI+生成饼状图和柱状图
- 使用OWC生成饼状图和柱状图
- 使用JFreeChart生成柱状图和饼图
- php生成简单的柱状图
- PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图等
- PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图等
- PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图等
- PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图等
- JFreeChart生成柱状图、饼状图、折线图详解
- “finally block does not complete normally”的警告
- jvm 系列之一 参数配置
- easyui datagrid中添加右键菜单事件
- http dynamic streaming
- Tomcat启动错误
- PHP生成柱状图、饼状图和线性图
- 第一格一粒米,后一格为前一格的两倍,共有十六格,求总数
- db1
- (转)FLV文件结构解析
- 寻找师傅
- Matlab的Signal Processing Toolbox函数速查手册
- Tomcat目录权限设置
- C++ STL 分离式编译
- 含有dropdownlist的gridview增删改查