扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
对于数据库来说,数据量的大小不是什么障碍,关键是动态地生成图表.
创新互联建站专注于连平企业网站建设,自适应网站建设,商城网站开发。连平网站建设公司,为连平等地区提供建站服务。全流程按需策划设计,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
生成图表的例子到处都是,在运行生成图表的程序之前,你的PHP需要一个GD库
- PHP进阶讨论 系统需求:类似统计代码的记录PV值和客户端信息。已有的想法:1:MYSQL建立一个 临时表和存储表,记录到临时表,定时插入存储表。2:同1,但使用MYSQL内存表,优点速度高很多,缺点就是意外当机会丢失当前内存表的数据。3:I/O操作 写文本, 同时建立多个文本进行操作,自己只是认为不合适,优点和缺点说不明白!4:分析apache日志,这个感觉很有局限性。请教各位phper 这种情况下还有更好的处理方式吗?------------------------------------------------------------------------生成图表:统计图表,查看了已有的一些成熟代码,都动则几MB 感觉系统很臃肿。自己写的话复杂功能比较难应付。主要是饼图和柱图
1、选择你的数据 2、插入图表,选择饼图 3、右击饼图,【添加数据标签】 4、再次右击,【设置数据标签格式】 5、【标签包括】中丫百分比】即可
pChart是一个开源的图表生成库,主要涉及3个Class: pChart.class , pData.class , pCache.class ,可生成20多种简单或复杂的图表,支持PNG,JPG,GIF通用图片格式。数据源可以来自于Database,CSV,当然也可以手写。使用该程序PHP需要开启GD服务,先来看看p
pChart是一个开源的图表生成库,主要涉及3个Class:, , ,可生成20多种简单或复杂的图表,支持PNG,JPG,GIF通用图片格式。数据源可以来自于Database,CSV,当然也可以手写。使用该程序PHP需要开启GD服务,先来看看pChart的工作流程:

主要分为三步:
* 读取用于生成图表数据(数据库、文件)
* 设计图表样式(圆角、底色等)
* 制作标签、题目、图例并生成图表
下面看一个简单的柱状图表:

代码如下:
?php // Standard inclusionsinclude("pChart/pData.class");
include("pChart/pChart.class");
// Dataset definition $DataSet = newpData;
//图表数据 $DataSet-AddPoint(array(1,4,-3,2,-3,3,2,1,0,7,4),"Serie1");
$DataSet-AddPoint(array(3,3,-4,1,-2,2,1,0,-1,6,3),"Serie2");
$DataSet-AddPoint(array(4,1,2,-1,-4,-2,3,2,1,2,2),"Serie3");
$DataSet-AddAllSeries();
$DataSet-SetAbsciseLabelSerie();
//数据图例 $DataSet-SetSerieName("Microsoft","Serie1");
$DataSet-SetSerieName("IBM","Serie2");
$DataSet-SetSerieName("Google","Serie3");
// Initialise the graph $Test = newpChart(700,230);
//设置图表尺寸、样式 $Test-setFontProperties("Fonts/tahoma.ttf",8);
$Test-setGraphArea(50,30,680,200);
$Test-drawFilledRoundedRectangle(7,7,693,223,5,240,240,240);
$Test-drawRoundedRectangle(5,5,695,225,5,230,230,230);
$Test-drawGraphArea(255,255,255,TRUE);
$Test-drawScale($DataSet-GetData(),$DataSet-GetDataDescription(),SCALE_NORMAL,150,150,150,TRUE,0,2,TRUE);
$Test-drawGrid(4,TRUE,230,230,230,50);
// Draw the 0 line $Test-setFontProperties("Fonts/MankSans.ttf",6);
$Test-drawTreshold(0,143,55,72,TRUE,TRUE);
// Draw the bar graph //柱状图要使用drawBarGraph() $Test-drawBarGraph($DataSet-GetData(),$DataSet-GetDataDescription(),TRUE,80);
// Finish the graph //制作图例、标题、字体等属性 $Test-setFontProperties("Fonts/MankSans.ttf",10);
$Test-drawLegend(596,150,$DataSet-GetDataDescription(),255,255,255);
$Test-setFontProperties("Fonts/MankSans.ttf",10);
$Test-drawTitle(50,22,"Example",50,50,50,585);
//生成图表 $imageFile ="example12.png";
$Test-Render($imageFile);
echo 'img src="'.$imageFile.'"'
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流