1:官网
2:配置
首先要保证PHP打开了Gd2的扩展:
打开PHP.ini,定位到extension=php_gd2.dll,把前面的分号删掉。
然后下载Jpgraph,http://www.aditus.nu/jpgraph/,解压到一个文件夹中。如 E:\Software\web\www\jpgraph。
打开PHP.ini,修改include_path参数,增加Jpgraph的路径,如include_path=",;E:\Software\web\www\jpgraph",重启Apache服务。
这样环境就配好了。
打开PHP.ini,定位到extension=php_gd2.dll,把前面的分号删掉。
然后下载Jpgraph,http://www.aditus.nu/jpgraph/,解压到一个文件夹中。如 E:\Software\web\www\jpgraph。
打开PHP.ini,修改include_path参数,增加Jpgraph的路径,如include_path=",;E:\Software\web\www\jpgraph",重启Apache服务。
这样环境就配好了。
3:列子
1):柱型图(未解决中文问题)
<?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.phpddt.com');//图片头部标题 $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(); ?>
2)折线图
<?php include ("jpgraph.php"); include ("jpgraph_bar.php"); include ("jpgraph_line.php"); // y 轴数据,以数组形式赋值 $ydata = array(12,4,9,15,11,10,9,7,15,7); // 创建 Graph 类,350 为宽度,250 长度,auto:表示生成的缓存文件名是该文件的文件名+扩展名(.jpg .png .gif ……) $graph = new Graph(350,250,"auto"); // 设置刻度类型,x轴刻度可作为文本标注的直线刻度,y轴为直线刻度 $graph->SetScale("textlin"); // 创建坐标类,将y轴数据注入 $lineplot=new LinePlot($ydata); // y 轴连线设定为蓝色 $lineplot->SetColor("blue"); // 坐标类注入图标类 $graph->Add($lineplot); // 显示图 $graph->Stroke(); ?>
3):流量图
include ('jpgraph/jpgraph.php'); include ("jpgraph/jpgraph_line.php"); include ("jpgraph/jpgraph_date.php"); $graph = new Graph(900, 150, "auto"); //$graph->title->Set("$title"); $graph->SetScale('datlin'); // 以时间来自适应X刻度 $graph->xgrid->Show(); // 显示网格 $graph->SetMarginColor('green@0.95'); $graph->SetMargin(45, 10, 5, 25); $graph->xaxis->SetTickSide(SIDE_BOTTOM); $graph->yaxis->SetTickSide(SIDE_LEFT); $graph->yaxis->title->Set("$danwei"); $p_transmit = new LinePlot($data_arr); $p_transmit->SetColor("#006600"); $p_transmit->SetFillColor('#006600'); $graph->xaxis->SetTickLabels($xdata); $graph->Add($p_transmit); $graph->xaxis->SetLabelAngle(90); $graph->Stroke();
4:处理中文乱码
1):设置中文字体(在linux中)
在jpgraph.php中有以下这样一段代码是设置字体文件路径的
if (!defined('TTF_DIR')) {
if (strstr( PHP_OS, 'WIN') ) {
$sroot = getenv('SystemRoot');
if( empty($sroot) ) {
$t = new ErrMsgText();
$msg = $t->Get(12,$file,$lineno);
die($msg);
}
else {
define('TTF_DIR', $sroot.'/fonts/');
}
} else {
define('TTF_DIR','/usr/share/fonts/truetype/');ç (我的作法是将windows下的fonts文件夹下的字体全部COPY到/usr/local/fonts/truetype)
}
}
if (strstr( PHP_OS, 'WIN') ) {
$sroot = getenv('SystemRoot');
if( empty($sroot) ) {
$t = new ErrMsgText();
$msg = $t->Get(12,$file,$lineno);
die($msg);
}
else {
define('TTF_DIR', $sroot.'/fonts/');
}
} else {
define('TTF_DIR','/usr/share/fonts/truetype/');ç (我的作法是将windows下的fonts文件夹下的字体全部COPY到/usr/local/fonts/truetype)
}
}
2):php中显示中文
方法一:
$title="流量图";
$title = iconv("UTF-8", "gb2312", $title);
$graph->title->Set($title);
$graph->title->SetFont(FF_SIMSUN,FS_BOLD,14);
$title = iconv("UTF-8", "gb2312", $title);
$graph->title->Set($title);
$graph->title->SetFont(FF_SIMSUN,FS_BOLD,14);
方法二:(未验证)
修改源文件jpgraph_ttf.inc.php
在第99-106行,改成下面这样子
elseif( $aFF === FF_SIMSUN ) {
// Do Chinese conversion
/*
if( $this->g2312 == null ) {
include_once 'jpgraph_gb2312.php' ;
$this->g2312 = new GB2312toUTF8();
}
return $this->g2312->gb2utf8($aTxt);
*/
return $aTxt;
}
在第99-106行,改成下面这样子
elseif( $aFF === FF_SIMSUN ) {
// Do Chinese conversion
/*
if( $this->g2312 == null ) {
include_once 'jpgraph_gb2312.php' ;
$this->g2312 = new GB2312toUTF8();
}
return $this->g2312->gb2utf8($aTxt);
*/
return $aTxt;
}
补充:
jpgraph默认显示汉字时是把汉字编码认为gb2312,转化为utf-8以后再显示。
这样的话,如果你的文件编码是gb2312,SetFont方法的第一个参数为FF_SIMSUN即可。
如果你是utf-8编码你还需要先把汉字编码转化为gb2312,这样你的汉字才可以正常显示。
3):代码
<?php include_once("jpgraph.php"); include_once("jpgraph_line.php"); // y 轴数据,以数组形式赋值 $ydata = array(11,3,8,12,5,1,9,13,5,7); // 创建 Graph 类,350 为宽度,250 长度,auto:表示生成的缓存文件名是该文件的文件名+扩展名(.jpg .png .gif ……) $graph = new Graph(350,250,"auto"); $title="流量图"; $title = iconv("UTF-8", "gb2312", $title); $graph->title->Set($title); $graph->title->SetFont(FF_SIMSUN,FS_BOLD,14); // 设置刻度类型,x轴刻度可作为文本标注的直线刻度,y轴为直线刻度 $graph->SetScale("textlin"); // 创建坐标类,将y轴数据注入 $lineplot=new LinePlot($ydata); // y 轴连线设定为蓝色 $lineplot->SetColor("blue"); // 坐标类注入图标类 $graph->Add($lineplot); // 显示图 $graph->Stroke(); ?>
5:颜色处理
1:通过颜色名称来指定颜色
SetColor(’white’)
SetFillColor(’orange’)
2:通过RGB值来指定颜色
SetColor( array(0xff,0xff,0xff))
SetFillColor( array(0×44,0×54,0xa4))
3:使用HTML颜色指定
SetColor(’#12be7a’)
SetFillColor(’#99eff5′)
4:颜色的微调处理
SetFillColor(’red@0.2′), 稍透明的红色
SetFillColor(’red@0.8′), 几乎全透明的颜色
5:使用jpgraph调整亮度
SetColor(’red:1.5′), 明亮的hongse
SetColor(’#3485a9:1.8), 明亮的蓝绿色
6:SetColor(’red@0.7:1.2′)
SetFillColor(’#4545aa@0.3:1.5′)
@后的第一个数值代表透明度,第二个数值代表亮度
SetColor(’white’)
SetFillColor(’orange’)
2:通过RGB值来指定颜色
SetColor( array(0xff,0xff,0xff))
SetFillColor( array(0×44,0×54,0xa4))
3:使用HTML颜色指定
SetColor(’#12be7a’)
SetFillColor(’#99eff5′)
4:颜色的微调处理
SetFillColor(’red@0.2′), 稍透明的红色
SetFillColor(’red@0.8′), 几乎全透明的颜色
5:使用jpgraph调整亮度
SetColor(’red:1.5′), 明亮的hongse
SetColor(’#3485a9:1.8), 明亮的蓝绿色
6:SetColor(’red@0.7:1.2′)
SetFillColor(’#4545aa@0.3:1.5′)
@后的第一个数值代表透明度,第二个数值代表亮度
相关推荐
Jpgrahp是一个很强大的画图函数库,该资源我已整理好,主目录是Examples,整个目录可以当成一个项目去配置。其中Examples/jpgraph是核心部份,主目录下的每个php文件都是一个单独的例子。
它使得作图变成了一件非常简单的事情,你只需从数据库中取出相关数据,定义标题,图表类型,然后的事情就交给JpGraph,只需掌握为数不多的JpGraph内置函数(可以参照JpGraph附带例子学习),就可以画出非常炫目的...
以前用PHP作图时必须要掌握复杂抽象的画图函数,或者借助一些网上下载的花柱形图、饼形图的类来实现。没有一个统一的chart类来实现图表的快速开发。 现在我们有了一个新的选择:JpGraph。专门提供图表的类库。它...
\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4\jpgraph-2.3.4
为了解决这一问题,我们需要对获取到的中文数据进行编码转换,确保其符合JPgraph所期望的编码格式。具体步骤如下: 1. **加载必要的库文件**:首先确保已经包含了JPgraph的相关库文件,例如`jpgraph.php`和`jpgraph...
《JpGraph库详解——基于jpgraph-3.0.7.tar.gz的图形绘制技术》 JpGraph是一款强大的PHP图形库,它为开发者提供了在Web应用中创建各种高质量图表的功能。本文将深入探讨JpGraph 3.0.7版本,通过分析解压后的文件...
**标题:“jpgraph3.0.7 for windows”** **描述**:“jpgraph3.0.7 for windows”是一款专为Windows操作系统设计的PHP图形库,它基于面向对象的编程理念,提供了一套强大而灵活的工具,允许开发者在PHP环境中生成...
**标题:“jpgraph-4.0.2下载”** **描述:“直接下载即可,配置方法网上有”** 本文将深入探讨“jpgraph-4.0.2”这一PHP图形库,以及如何将其配置到您的开发环境中。JpGraph是一款强大的PHP类库,专门用于创建高...
《深入解析JPGraph库:基于jpgraph-2.3.4的图形绘制技术》 JPGraph是一款用PHP编写的开源图形库,它为开发者提供了一种简单而强大的方式来创建各种高质量的图表,如线图、柱状图、饼图等。在本文中,我们将深入探讨...
6. **版本信息**:提供的压缩包文件名“jpgraph-2.3.3”表示这是`jpgraph`的一个特定版本,2.3.3可能包含了前一版本的改进和新特性。 在使用`jpgraph`库进行PHP开发时,以下是一些关键步骤和注意事项: 1. **安装与...
**JPgraph类库详解** JPgraph是一款专门为PHP开发的图形绘制类库,它提供了一套丰富的API,使得在PHP环境中创建各种高质量图表变得极其简单。这个工具尤其适用于那些需要在网页上展示数据统计、分析结果或者任何...
**JpGraph 3.0 图形库详解** JpGraph 是一款强大的开源图形库,主要为PHP开发人员提供服务,允许他们在Web应用程序中创建高质量的图表和图像。标题中的"jpgraph-3.0"指的是JpGraph的第三个主要版本,即3.0.0-rc1...
通过解压"jpgraph-3.5.0b1.tar"文件,开发者可以获得完整的JpGraph库,包括源码、文档、示例等,以便深入学习和使用。在实际项目中,结合PHP的MVC框架,如Laravel或Symfony,可以轻松地将JpGraph整合进数据报表和...
**jpgraph统计图** `jpgraph` 是一个强大的PHP库,专为生成高质量的图表而设计,它使得在Web应用程序中展示数据变得更加直观和吸引人。这个库支持多种类型的统计图表,包括条形图、线形图、饼图、雷达图、散点图等...
这个压缩包包含了JPGraph库的版本4.2.7的所有源代码和相关资源。JPGraph是一款强大的PHP类库,它允许开发者通过纯PHP代码生成高质量的图表,包括线图、柱状图、饼图、散点图等多种类型的图表,非常适合在Web应用程序...
本篇文章将详细介绍JpGraph 4.2.2的功能、安装过程、基本使用方法以及与MySQL的交互。 ### 一、JpGraph 4.2.2概述 JpGraph库的核心优势在于其灵活性和多样性,支持多种类型的图表,如线图、柱状图、饼图、雷达图、...
thinkphp使用jpgraph实例,防止新手陷入误区
### JPGraph 图形类库详解 #### 一、JPGraph 概述 JPGraph 是一个用 PHP 编写的强大图表生成类库,它允许开发者轻松地创建多种类型的图表,包括但不限于 3D 饼图、柱状图、折线图等。JPGraph 提供了丰富的自定义...
这个压缩包“jpgraph-4.2.11.tar.gz”包含了该版本的所有源代码和相关文件,为开发者提供了创建各种高质量图表的强大工具。在本文中,我们将深入探讨JpGraph 4.2.11的关键特性和在PHP开发中的实际应用。 首先,...