PHP 柱形图绘制类——封装柱形图绘制方法,绘制柱形图应用的是Jpgraph类库中的BarPlot类,调用SetFillGradient()方法完成颜色、形状的设置。
PHP 柱形图绘制类 语法
(1)SetFillGradient()方法设置柱形图的颜色、形状。其语法如下:
SetFillGradient(aFromColor,aToColor, $aStyle)
- $aFromColor:默认颜色。
- $aToColor:转换的颜色。
- $aStyle:设置的样式。
(2)SetFont()方法统计图标题、坐标轴等文字样式。其语法如下:
SetFont(family, [style,] [$size])
- $family:指定文字的字体。
- $style:指定文字的样式。
- $size:指定文字的大小,默认为10。
(3)SetMargin()方法设置图像、标题、坐标轴上文字与边框的距离。其语法如下:
SetMargin(left,right,top,bottom)
参数指定其与左右、上下边框的距离。
或者:
SetMargin($data)
参数$data同样指定与边框的距离。
PHP 柱形图绘制类 示例
在本示例中运用Jpgraph生成柱形图,对公司视频教程上半年销售量进行统计。
(1)创建index.php文件,设置网页的编码格式,并通过include()语句导入Jpgraph类库。
(2)应用Jpgraph类库中的方法完成柱形图的创建。其关键代码如下:
<?php
header ( "Content-type: text/html; charset=UTF-8" ); //设置文件编码格式
include ("../src/jpgraph.php");
include ("../src/jpgraph_bar.php");
datay=array(150,201,145,340,265,365);datax=array("Jan","Feb","Mar","Apr","May","June");
graph = new Graph(400,200,"auto"); //创建图像graph->img->SetMargin(60,20,30,50); //设置图像边框间距
graph->SetScale("textlin"); //定义坐标刻度类型graph->SetMarginColor("lightblue"); //定义图像颜色
graph->title->Set(iconv("utf-8","gb2312",'视频教程上半年销售量分析'));
//定义标题graph->title->SetFont(FF_SIMSUN, FS_BOLD); //设置标题字体
graph->xaxis->SetFont(FF_VERDANA,FS_NORMAL,10); //设置X 轴的字体graph->yaxis->SetFont(FF_VERDANA,FS_NORMAL,10); //设置Y 轴的字体
graph->xaxis->SetTickLabels(datax); //设置X 轴输出的数据
graph->xaxis->SetLabelAngle(50); //设置输出文字大小bplot = new BarPlot(datay); //实例化图像创建类bplot->SetWidth(0.6); //设置柱形图的输出大小
bplot->SetFillGradient("navy","#FFFF00",GRAD_LEFT_REFLECTION);
//设置图像的类型和填充颜色bplot->SetColor("white"); //设置图像边框颜色
graph->Add(bplot); //添加数据
$graph->Stroke(); //生成图像
?>