jpgraph简介
jpgraph是开源的php统计图表生成库,基于php的gd2图形库构建,把生成统计图的相关操作封装,隐藏了部分复杂的操作,使在php页面上输出统计图表变得更加容易。jpgraph的官方网站为:http://jpgraph.net,开发者可以在上面免费下载最新版的jpgraph和阅读相关帮助文档或示例程序。
jpgraph的配置
(1)修改文件php.ini
在include_path中添加jpgraph的目录路径,并将jpgraph解压后的src目录名称更改为jpgraph。
(2)检查php是否支持gd库
在php.ini文件中找到语句;extension=php_gd2.dll。把上述语句前的;号去掉,即去掉注释。如果因为php版本不同而找不到此语句,则可直接添加extension=php_gd2.dll
(3)修改文件jpgraph_gb2312.php
找到函数:function gb2utf8($gb)
把函数修改为:
1
2
3
|
function gb2utf8( $gb ) {
return $gb ;
}
|
即不使用gb2编码方式转utf8方式的那段代码。
折线图
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<?php
require_once ( "jpgraph/jpgraph.php" );
require_once ( "jpgraph/jpgraph_line.php" );
$data1 = array (523,634,371,278,685,587,490,256,398,545,367,577); //第一条曲线的数组
$graph = new graph(500,300);
$graph ->setscale( "textlin" );
$graph ->setshadow();
$graph ->img->setmargin(60,30,30,70); //设置图像边距
$graph ->graph_theme = null; //设置主题为null,否则value->show(); 无效
$lineplot1 = new lineplot( $data1 ); //创建设置两条曲线对象
$lineplot1 ->value->setcolor( "red" );
$lineplot1 ->value->show();
$graph ->add( $lineplot1 ); //将曲线放置到图像上
$graph ->title->set( "cdn流量图" ); //设置图像标题
$graph ->xaxis->title->set( "月份" ); //设置坐标轴名称
$graph ->yaxis->title->set( "流 量(gbits)" );
$graph ->title->setmargin(10);
$graph ->xaxis->title->setmargin(10);
$graph ->yaxis->title->setmargin(10);
$graph ->title->setfont(ff_simsun,fs_bold); //设置字体
$graph ->yaxis->title->setfont(ff_simsun,fs_bold);
$graph ->xaxis->title->setfont(ff_simsun,fs_bold);
$graph ->xaxis->setticklabels( $gdatelocale ->getshortmonth());
$graph ->stroke(); //输出图像
?>
|
柱状图
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
<?php
require_once ( "jpgraph/jpgraph.php" );
require_once ( "jpgraph/jpgraph_bar.php" );
$data = array (19,23,34,38,45,67,71,78,85,87,96,145);
$ydata = array ( "一" , "二" , "三" , "四" , "五" , "六" , "七" , "八" , "九" , "十" , "十一" , "十二" );
$graph = new graph(500,300); //创建新的graph对象
$graph ->setscale( "textlin" ); //刻度样式
$graph ->setshadow(); //设置阴影
$graph ->img->setmargin(40,30,40,50); //设置边距
$graph ->graph_theme = null; //设置主题为null,否则value->show(); 无效
$barplot = new barplot( $data ); //创建barplot对象
$barplot ->setfillcolor( 'blue' ); //设置颜色
$barplot ->value->show(); //设置显示数字
$graph ->add( $barplot ); //将柱形图添加到图像中
$graph ->title->set( "cdn流量图" );
$graph ->xaxis->title->set( "月份" ); //设置标题和x-y轴标题
$graph ->yaxis->title->set( "流 量(mbits)" );
$graph ->title->setcolor( "red" );
$graph ->title->setmargin(10);
$graph ->xaxis->title->setmargin(5);
$graph ->xaxis->setticklabels( $ydata );
$graph ->title->setfont(ff_simsun,fs_bold); //设置字体
$graph ->yaxis->title->setfont(ff_simsun,fs_bold);
$graph ->xaxis->title->setfont(ff_simsun,fs_bold);
$graph ->xaxis->setfont(ff_simsun,fs_bold);
$graph ->stroke();
?>
|
饼状图
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<?php
require_once ( "jpgraph/jpgraph.php" );
require_once ( "jpgraph/jpgraph_pie.php" );
require_once ( "jpgraph/jpgraph_pie3d.php" );
$data = array (19,23,34,38,45,67,71,78,85,87,90,96);
$graph = new piegraph(550,500);
$graph ->setshadow();
$graph ->title->set( "cdn流量比例" );
$graph ->title->setfont(ff_simsun,fs_bold);
$pieplot = new pieplot3d( $data ); //创建pieplot3d对象
$pieplot ->setcenter(0.4, 0.5); //设置饼图中心的位置
$pieplot ->setlegends( $gdatelocale ->getshortmonth()); //设置图例
$graph ->add( $pieplot );
$graph ->stroke();
?>
|
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持服务器之家!
原文链接:http://blog.csdn.net/aoshilang2249/article/details/46956163