PHP图形生成库JpGraph生成图形的例子

pGraph这个强大的绘图组件能根据用户的需要绘制任意图形。只需要提供数据,就能自动调用绘图函数的过 程,把处理的数据输入自动绘制。JpGraph提供了多种方法创建各种统计图,包括折线图、柱形图和饼形图等。JpGraph是一个完全使用PHP语言编 写的类库,并可以应用在任何PHP环境中。

简介

JpGraph其实就是一个图表类库,会让开发者们作图非常方便,只要几行代码就可以勾画出非常炫的图表。

 

JpGraph是开源的PHP统计图表生成库,基于PHP的GD2图形库构建,把生成统计图的相关操作封装,隐藏了部分复杂的操作,使在PHP页面上输出统计图表变得更加容易。

JpGraph的官方网站为:http://www.aditus.nu/jpgraph/index.php,开发者可以在上面免费下载最新版的JpGraph和阅读相关帮助文档或示例程序。

安装和配置

JpGraph的配置非常简单,首先它是需要GD库的支持的,PHP底包默认是不支持GD库的,打开php.ini文件,打开php_gd2扩展,要注意的是,官方下载的文件,examples里面的php文件路径是错误的,需要你移动一下文件,我是这样做的:将Examples文件移出外层。

然后将SRC文件名改为JpGraph,最后将JpGraph文件移进Examples就行了,这样你就可以查看Examples里面的很多例子了。当你需要什么文件直接在Examples里面查找就行了,你只需要改变一些参数就行了。

注意:JpGraph需要GD库的支持。如果用户希望JpGraph类库仅对当前站点有效,只需将Jpgraph压缩包下的src文件夹中的全部文件复制到网站所在目录的文件夹中即可,使用时调用src文件夹下的指定文件即可。这些内容在后面的典型实例中将具体讲解。

简单示例

我们可以使用JpGraph快速的画出下面的统计图表。

 

上面的图表对于的PHP代码如下
require_once ('Examples/jpgraph/jpgraph.php'); //载入基本类
require_once ('Examples/jpgraph/jpgraph_bar.php');//载入柱形图类
$datay=array(300,230,400);//你要显示的数据
$graph = new Graph(400,250);//创建一个图,参数为宽度和高度
$graph->SetScale("textlin");
$graph->img->SetMargin(25,15,25,15);//设置图标边距
$graph->title->SetFont(FF_SIMSUN,FS_BOLD,24); //设置字体,类型,大小
$graph->title->Set('www.111cn.net');//图片头部标题
$graph->title->SetColor('red');//标题字体颜色
$graph->xaxis->SetFont(FF_FONT1);//设置英文字体
$graph->yaxis->SetFont(FF_FONT1);
$bplot = new BarPlot($datay);
$bplot->SetWidth(0.4);//柱状的宽度
$bplot->SetFillGradient("navy","lightsteelblue",GRAD_MIDVER);
$bplot->SetColor("navy");
$graph->Add($bplot);
$graph->Stroke();

中文字体支持

特表要注意字体的设置,如设置为FF_FONT1就不能正确显示汉字了,设置中文字体的方法:
$graph->title->Set("www.111cn.net");
$graph->title->SetFont(FF_FONT1,FS_BOLD);  //英文字体
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); //设置字体,类型,大小
$graph->title->SetColor('red'); //设置字体颜色
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); // 设置标题中文字体
$graph->legend->SetFont(FF_SIMSUN,FS_BOLD); //设置线条指示字体
$graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD);//设置Y轴线条指示字体
$graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD);//设置X轴线条指示字体

根据当前PHP环境中支持的图片格式来设置默认的生成图片的格式。JpGraph默认图片格式的配置可以通过修 改DEFAULT_GFORMAT的设置来完成。

默认值auto表示JpGraph将依次按照PNG、GIF和JPEG的顺序来检索系统支持的图片格式。 DEFINE(“DEFAULT_GFORMAT”,”auto”);注意:如果用户使用的为JpGraph 2.3版本,那么不需要重新进行配置。

JpGraph帮助文档:http://jpgraph.net/download/manuals/

时间: 2024-09-08 09:54:41

PHP图形生成库JpGraph生成图形的例子的相关文章

静态连接库的生成和使用

一.静态库的生成 a) 用VC向导生成一个win32 Static Library工程 b) 添加头文件,声明函数接口. c) 添加实现文件,包含头文件并实现其中的函数. d) 编译工程后,生成Mylib.lib.

php将mysql数据库整库导出生成sql文件的详细代码

 下面是php将mysql数据库整库导出生成sql文件的详细代码,希望对大家在用php编程时备份数据有一定帮助 由网上搜到,有更改.    文件名:db_backup.php    源代码如下:   代码如下: <?php  ini_set("max_execution_time", "180");//避免数据量过大,导出不全的情况出现.    /*    程序功能:mysql数据库备份功能  作者:唐小刚  说明:  本程序主要是从mysqladmin中提取

PHP图形操作之Jpgraph学习笔记_php技巧

本文实例讲述了PHP图形操作之Jpgraph学习笔记.分享给大家供大家参考,具体如下: 一.Jpgraph安装配置 下载Jpgraph安装包 解压后放置磁盘中,(最好是放在和网页一起) 修改php.ini文件: 1.内存  memory_limit=X,至少为32M 2.执行时间  max_execution_time=X,对于复杂的图片加载时需要较多的时间,根据图片的复杂度做相应的修改 3.缓存  output_buffering  注释掉缓存,便于调试 二.使用Jpgraph创建图形的基本步

android linux 静态库的生成和使用

问题描述 android linux 静态库的生成和使用 有个android手机项目,linux3.10,kernel里面有几个文件不想开源出去,想做成静态库一起发布给客户 请问一下怎么将这几个文件做成静态库,做出来后放在哪个目录,再编译整个kernel的时候.mk文件该怎么写 希望能帮忙详细的举个例子,感谢 解决方案 http://blog.chinaunix.net/uid-25885064-id-3066814.html android不太显示,因为手机的cpu型号太多,你不提供源代码,那

几款开源的图形界面库(GUI Libraries)

SmartWin++  遵循BSD许可协议的C++ GUI库,建立在Windows API之上,但仍可以通过使用WineLib在Linux/xNix上使用.也支持Pocket PC和基于Windows CE的应用程序...   XCLASS  XCLASS库是X Windows环境中的一个C++ GUI工具包的.它是基于Xlib的,由一套组件,包括从简单部件到复杂的,其中也包括许多常用的对话框.组件有MS Windows外观风格.   Windows++ Windows++是一个轻量级的C++应

makefile把一个 .cpp文件和它所依赖的几个 .a(静态库文件 ) 生成一个动态库文件.so

问题描述 makefile把一个 .cpp文件和它所依赖的几个 .a(静态库文件 ) 生成一个动态库文件.so 假设编译交叉编译工具路径为dir1(arm-linux-androideabi-gcc-4.9 ),存放生成的.so文件的路径为dir2,test.cpp,依赖1.a,2.a,3.a这三个静态文件库,Makefile文件应该怎么写 解决方案 arm-linux-androideabi-gcc-4.9 -fPIC -shared -o dir2/xxx.so test.cpp 1.a 2

sqlite3-使用Eclipse cpp版本如何编译SQLite3,并生成库

问题描述 使用Eclipse cpp版本如何编译SQLite3,并生成库 电脑装有cygwin和Eclipse的cpp版本 如何使用Eclipse cpp版本编译SQLite3,并生成库

js页码生成库,一个适合前后端分离的页码生成器

原文:js页码生成库,一个适合前后端分离的页码生成器 前言 上星期写的任务里面有需要进行分页的处理,git搜索了一番,没有觉得合适的,于是自己临时写了个分页的算法. 然后等闲下来的时候,决定把分页进行优化并推广.于是乎,一个适合前后端分离的页码生成器就这样出来了. 先别废话了,直接上 git 地址 和 demo 地址.看官果断点击进去瞧瞧看.项目主页的 readme 文档的自动排版将更好.   先讲讲设计思想 整个开发流程围绕事件绑定进行开发. 脱离 callback 回调这种回调方法,直接使用

浅析Java验证码生成库JCaptcha_java

JCaptcha是非常强大的,不光是可以生成图片式的验证码,还可以生成声音式的(新浪就使用了双重验证码).本文简单的介绍了JCaptcha库以及使用实例,下面一起来看看. 下载JCaptcha库 maven依赖如此添加: <dependency> <groupId>com.octo.captcha</groupId> <artifactId>jcaptcha</artifactId> <version>1.0</version&