pChart是一个开源的图表生成库,主要涉及3个Class: pChart.class , pData.class , pCache.class ,可生成20多种简单或复杂的图表,支持PNG,JPG,GIF通用图片格式。数据源可以来自于Database,CSV,当然也可以手写。使用该程序PHP需要开启GD服务,先来看看p
10年积累的网站设计制作、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有大关免费网站建设让你可以放心的选择与我们合作。
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.'"'
index.php
html
head
/head
body
table
trtdid/td/tr
?php
mysql_connect('localhost','root','');
mysql_select_db('test');
mysql_query("SET NAMES utf8");
$sql = "select * from 表";
$result = mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
?
trtd?php echo $row['id'];?/tr/td
?php
}
?
/table
/body
画坐标轴你可以插入一个excel的图表,然后把数据删除,设置一下xy轴的刻度单位。或者用word的绘图工具画好一个刻度之后复制、旋转、组合一下,不过没前一个方法方便。
左右都有的坐标轴,左边的是主坐标轴,右边的是次坐标轴
这个需要你绘制的图表中至少含有两条数据,比如数量和占比
然后选中一条数据,右键,设置数据系列格式,系列产生在,选次坐标轴即可
重点是一定要选择一条数据系列
以下的推荐使用的php图形函数库:
1. JpGraph
是一个面向对象图形创建函数库。可用它来生成柱状图,饼状图,甘特图,网状图等常用到的一些图形。支持的图片格式有GIF,JPG和PNG。
下载地址:
2. pChart
pChart是一个基于GD library(图形处理函数库)开发的PHP图表制作开源项目。支持多种图表类型。
下载地址:
3. Highcharts
Highcharts是一个纯JavaScript编写的图表库,为您的网站或Web应用程序提供直观,互动式图表。
Highcharts目前支持线形图、区块图、柱形图、条形图、饼图和散点图等类型。
下载地址:
对于数据库来说,数据量的大小不是什么障碍,关键是动态地生成图表.
生成图表的例子到处都是,在运行生成图表的程序之前,你的PHP需要一个GD库