- 浏览: 246305 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
nodonkey:
貌似还是不行,再等等吧,amfphp要出2.0了
amfphp1.9与php5.3.X版本不兼容 -
live711:
请问amfphp与php5.3.X搭配能用了吗?
amfphp1.9与php5.3.X版本不兼容 -
zhousheng193:
非常感谢!
安装flash player debug版本遇到的一些问题 -
sp42:
谢谢提示,我遇到的也是不能加密,用MAC地址代替之。
DI-624+A路由器韧体升级解决经常掉线的问题(转) -
心似海:
不错,要挖去了,哈哈
深入sql之merge into
安装
JpGraph 的安装十分简便 :到 http://sourceforge.net/projects/jpgraph/ 下载,解压到应用程序的根路径即可。
使用范例一
这次我们以 Examples 目录下的 example0.php 为例来讲解一下如何初步使用 JpGraph。example0.php 代码如下:
代码片段
使用范例二
代码片段
可能遇到的问题
由于涉及到图象输出,所以在某些GUI配置不正确的系统中就可能会遇到一些显示问题。最常见的是“找不到 XX 字体(比如FF_ARIAL 字体)”,遇到这种情况,我们可采取以下步骤解决:
1. 首先到具备这些字体的系统(比如 Windows 等系统)中或可以下载这些字体的地方把相关的字体罗列出来,然后把他们复制到某个我们 WEB 程序可以访问的目录(假定为 /www/fonts )内。
以 FF_ARIAL 字体为例,我们可以在 Windows 系统的 $windows/fonts 找到 arialbd.ttf 、arialbi.ttf、ariali.ttf、arial.ttf 这几个字体文件,然后将其复制到 /www/fonts。
2. 修改jpgraph.php文件。
找到
DEFINE('TTF_DIR','/usr/X11R6/lib/X11/fonts/truetype/');
这一行,将其改为
DEFINE('TTF_DIR',’/www/fonts/’);
重新刷新即可
JpGraph 的安装十分简便 :到 http://sourceforge.net/projects/jpgraph/ 下载,解压到应用程序的根路径即可。
使用范例一
这次我们以 Examples 目录下的 example0.php 为例来讲解一下如何初步使用 JpGraph。example0.php 代码如下:
代码片段
<?php include ("../jpgraph.php"); //必须要引用的文件 include ("../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"); // 设置刻度类型,x轴刻度可作为文本标注的直线刻度,y轴为直线刻度 $graph->SetScale("textlin"); // 创建坐标类,将y轴数据注入 $lineplot=new LinePlot($ydata); // y 轴连线设定为蓝色 $lineplot->SetColor("blue"); // 坐标类注入图标类 $graph->Add($lineplot); // 显示图 $graph->Stroke(); ?>
使用范例二
代码片段
<?php $ydata = array(11,3,8,12,5,1,9,13,5,7); // x 轴数据,作为 x 轴标注 $xdata = array('2007-3-01','2007-3-03','2007-3-05','2007-3-07','2007-3-09','2007-3-01','2007-3-11','2007-3-13','2007-3-15'); $graph = new Graph(350,150,"auto"); $graph->SetScale("textlin"); // 设置图表大标题 $graph->title->Set(‘Example’); $lineplot = new LinePlot($ydata); $graph->Add($lineplot); // 设置图表灰度四周边距,顺序为左右上下 $graph->img->SetMargin(60,20,20,50); // 设置输出文件格式为 jpg,缺省为 png $graph->img->SetImgFormat( "jpeg"); // y 轴坐标描点形状为菱形 $lineplot-> mark->SetType(MARK_DIAMOND ); // 加入 x 轴标注 $graph->xaxis->SetTickLabels($xdata); // 定位 x 轴标注垂直位置应在最下方 $graph->xaxis->SetPos("min"); // 设置 x 轴标注文字为斜体,粗体,6号小字 $graph->xaxis->SetFont(FF_ARIAL,FS_BOLD,6); // 设置 x 轴标注文字 45 度倾斜。注:前面 SetFont 必须为 FF_ARIAL $graph->xaxis->SetLabelAngle(45); // x 轴刻度间隔为 2 $graph->xaxis->SetTextLabelInterval(2); // 标题和 y 轴标题字体为标准字体 $graph->title->SetFont(FF_FONT1,FS_BOLD,2); $graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD); // y 轴坐标点连线为蓝色加深加粗 $lineplot->SetColor("blue:0.5"); $lineplot->SetWeight(2); $graph->yaxis->SetColor("black"); $graph->yaxis->SetWeight(2); // 阴影效果 $graph->SetShadow(); // 显示图形 $graph->Stroke(); ?>
可能遇到的问题
由于涉及到图象输出,所以在某些GUI配置不正确的系统中就可能会遇到一些显示问题。最常见的是“找不到 XX 字体(比如FF_ARIAL 字体)”,遇到这种情况,我们可采取以下步骤解决:
1. 首先到具备这些字体的系统(比如 Windows 等系统)中或可以下载这些字体的地方把相关的字体罗列出来,然后把他们复制到某个我们 WEB 程序可以访问的目录(假定为 /www/fonts )内。
以 FF_ARIAL 字体为例,我们可以在 Windows 系统的 $windows/fonts 找到 arialbd.ttf 、arialbi.ttf、ariali.ttf、arial.ttf 这几个字体文件,然后将其复制到 /www/fonts。
2. 修改jpgraph.php文件。
找到
DEFINE('TTF_DIR','/usr/X11R6/lib/X11/fonts/truetype/');
这一行,将其改为
DEFINE('TTF_DIR',’/www/fonts/’);
重新刷新即可
require_once('include/jpgraph.php'); //Graph类 require_once('include/jpgraph_line.php'); //LinePlot 类 $aAxisType = 'intlin'; //第一个int是X轴类型第2个lin是Y轴类型 $yScaleMin = 0; //Y轴最小值, 如果不需要设置,可以为空,或者NULL,下同 $yScaleMax = 11; //Y轴最大值 $xScaleMin = 1; //X轴最大值 $xScaleMax = 24; //X轴最大值 $unitType = '月份'; $chartDataTmpArr = array('1' => '1', '2' => '0', '3' => '4', '4' => '5', '5' => '7', '6' => '8', '7' => '4', '8' => '6', '9' => '8', '10' => '7', '11' => '4', '12' => '5', '13' => '4', '14' => '6', '15' => '4', '16' => '2', '17' => '2', '18' => '2', '19' => '2', '20' => '7', '21' => '6', '22' => '1', '23' => '4', '24' => '4'); $chartDataTmpArr2 = array('1' => '2', '2' => '0', '3' => '2', '4' => '2', '5' => '8', '6' => '9', '7' => '5', '8' => '7', '9' => '9', '10' => '7', '11' => '4', '12' => '7', '13' => '2', '14' => '4', '15' => '5', '16' => '6', '17' => '0', '18' => '3', '19' => '6', '20' => '5', '21' => '8', '22' => '9', '23' => '4', '24' => '4'); $graph = new Graph($width = 780 , $height = 400); //创建新的Graph对象 $graph->SetScale($aAxisType, $yScaleMin, $yScaleMax, $xScaleMin, $xScaleMax); //设置刻度模式SetScale($aAxisType,$aYMin=1,$aYMax=1,$aXMin=1,$aXMax=1) $graph->img->SetMargin(40, 20, 50, 50) ; //设置图表边界 $title = date("Y-m-d H:i:s")."统计图"; $graph->title->SetFont(FF_SIMSUN,FS_BOLD); //设置图表标题的字体类型 $graph->title->Set($wholeTitle); $graph->title->SetMargin (20); $graph->xaxis->title->SetFont(FF_SIMSUN); $graph->xaxis->title->Set($unitType); $graph->xaxis->title->SetMargin(14); $graph->legend->SetLineWeight(2); //设置图例文字的字体 $lineplot = new LinePlot($chartDataTmpArr); //创建要画的一地条曲线的对象 $lineplot->SetWeight(2); //曲线的线宽 $lineplot->SetLegend("进入");//设置图例文字 $graph->legend->Pos( 0.025, 0.08, "right","center" ); //图例文字框的位置 0.025,0.08 是以右上角为基准的,0.025是距左右距离,0.08是上下距离。 $graph->legend->SetLayout('1'); //如果有两条曲线,他们的图例文字并排放置。 $graph->legend->SetFrameWeight(0); //图例文字外框边框border设置为0 $graph->legend->SetFillColor('#C8C8C8'); //图例文字框内的填充颜色 $graph->legend->SetShadow('#C8C8C8', 0); //设置图例文字框的阴影部分颜色和border $lineplot->SetColor("orange"); //设置曲线颜色 $graph->Add($lineplot); //在统计图上绘制曲线 $lineplot2 = new LinePlot($chartDataTmpArr2); //创建一条新的曲线对象 $lineplot2->SetLegend("出去"); $lineplot2->SetWeight(2); $lineplot2->SetColor("blue"); $graph->Add($lineplot2); $filename = 'images/strock/'.time().'.png'; $graph->Stroke($filename);
/*如果这里直接调用Stroke()函数,图片会从cache里直接输出,但是有个问题,网页上只能为这个曲线图输出,
别的内容在这个曲线图之前输出就会出错。别的内容放在这个曲线图之后都没输出了。
所以需要传递一个文件名,这样在本地就会存储内容。*/
echo '<img src="'.$filename.'" />';/* 存放图片的文件夹会有比较多的图片,如果是LINUX服务器的话可以设置一个cronjob,定时清空下图片。
还有另一种方法 比如画图文件为 drawImage.php 可以用另一个文件viewImage.php以内容<img src ="drawImage.php" /> 的方法把图片载入进来,这样可以不用生成图片文件,
而且图片显示位置可以随便放. 不过这样做是有问题的,比如说他要载入的数据是动态的,
那就没办法把那么一大串的数组也都穿进去. 或许可以用serialize 函数来处理一堆的数据,
再在drawImage.php中用unserialize函数还原数据.没试过. */
发表评论
-
nginx重启脚本 (平滑重启nginx)
2011-05-19 17:07 2455nginx重启脚本 (平滑重启nginx) ... -
Xcache 使用笔记
2011-02-22 18:32 1698转自:http://www.cnrui.cn/blog/art ... -
三大WEB服务器对比分析(apache ,lighttpd,nginx)
2011-02-22 17:47 2269本文转自:http://www.blogjava.ne ... -
三款免费的PHP加速器:APC、eAccelerator、XCache比较
2011-02-22 17:44 1220本文转载自:http://killker.com/bl ... -
amfphp1.9与php5.3.X版本不兼容
2011-02-18 13:58 3321damned,昨天花了一天时间 ... -
在PHP语言中使用JSON
2011-01-20 19:29 1120作者: 阮一峰 http://www.ruanyif ... -
[转载]50点提高PHP编程效率
2011-01-17 19:09 916这些总结很 实用,希 ... -
php could not find driver
2011-01-11 18:10 1978在调试一个PHP程序时,报了这个错误, could no ... -
linux下执行php文件发现Could not open input file
2010-11-04 13:51 2402在linux下通过svn更新了一个php文件,目的是想通过执行 ... -
Error: Commands out of sync; you can't run this command now
2010-10-06 15:43 2987Q: i m getting this bug.. and ... -
PHP call mysql stored procedure
2010-09-20 18:12 1289Before you installed the php_my ... -
LAMP最小优化
2010-09-11 17:57 1105原文地址:http://www.blogk ... -
cURL使用心得(转)
2010-09-11 17:47 2883原文地址:http://www.blogkid.net/arc ... -
curl使用介绍2
2010-09-11 17:43 884原帖:http://www.uican.com.c ... -
PHP中CURL使用说明(转)
2010-09-11 17:13 1330转自:http://www.uican.com.c ... -
PHP内存溢出Allowed memory size of 解决办法
2010-08-03 18:21 9597以前追踪过这个问题,但是那个时候工具用的不太好,没看的这么 ... -
PHP自定义时间函数
2010-06-30 18:58 17721.php取本月本周或者下月下周的开始到结束时间 &l ... -
PHP Notice: Undefined index: ... 问题的解决方案
2009-12-30 19:05 6113首先,这个不是错误,是warning。所以如果服务器 ... -
php几个数组函数
2009-10-14 15:43 1453数组运用的熟练有时候能解决很多问题。熟悉相关函数就能事半功倍。 ... -
out of dynamic memory in yy_create_buffer() in Unknown on line 0
2009-09-28 09:22 0自己跑的机子上总会出现这个error: PHP Fatal ...
相关推荐
为了解决这一问题,我们需要对获取到的中文数据进行编码转换,确保其符合JPgraph所期望的编码格式。具体步骤如下: 1. **加载必要的库文件**:首先确保已经包含了JPgraph的相关库文件,例如`jpgraph.php`和`jpgraph...
**标题:“jpgraph-4.0.2下载”** **描述:“直接下载即可,配置方法网上有”** 本文将深入探讨“jpgraph-4.0.2”这一PHP图形库,...在使用过程中,遇到问题可以参考官方文档或在线资源,解决配置和使用上的疑问。
它使得作图变成了一件非常简单的事情,你只需从数据库中取出相关数据,定义标题,图表类型,然后的事情就交给JpGraph,只需掌握为数不多的JpGraph内置函数(可以参照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
7. **错误处理与调试**:jpgraph提供了良好的错误处理机制,帮助开发者在出现问题时快速定位并解决。 8. **跨平台性**:虽然这里特指的是“jpgraph3.0.7 for windows”,但jpgraph本身是跨平台的,可以在多种操作...
通过学习和实践,我们可以充分利用JpGraph的强大功能,提升数据可视化的能力,为项目增色添彩。 以上就是关于JpGraph 3.0.7的基本介绍,希望能为你在开发过程中提供有效的帮助。在实际使用中,不断探索和尝试,你会...
标题中的"jpgraph-3.0"指的是JpGraph的第三个主要版本,即3.0.0-rc1(Release Candidate 1),这通常是软件发布前的最后一个测试版本,意味着它已经非常接近最终稳定版,但可能还存在一些小问题等待解决。...
在本文中,我们将深入探讨JPGraph 2.3.4版本中的核心特性、使用方法以及实际应用案例,旨在帮助开发者更好地理解和利用这一工具。 首先,JPGraph的核心功能在于其丰富的图表类型。在2.3.4版本中,支持包括折线图...
通过解压"jpgraph-3.5.0b1.tar"文件,开发者可以获得完整的JpGraph库,包括源码、文档、示例等,以便深入学习和使用。在实际项目中,结合PHP的MVC框架,如Laravel或Symfony,可以轻松地将JpGraph整合进数据报表和...
**JPgraph类库详解** JPgraph是一款专门为PHP开发的图形绘制类库,它提供了一套丰富的API,使得在PHP环境中创建各种高质量图表变得极其简单。这个工具尤其适用于那些需要在网页上展示数据统计、分析结果或者任何...
6. **易用性**:`jpgraph` 的API清晰,文档详尽,学习曲线平缓,开发者能够快速上手并创建出专业级的图表。 **安装与使用** `jpgraph-3.0.7` 是`jpgraph`的一个版本,包含所有必要的类文件和示例。要开始使用,...
在使用`jpgraph`库进行PHP开发时,以下是一些关键步骤和注意事项: 1. **安装与引入**:将`jpgraph`库解压到PHP项目的相应目录,然后在需要使用图表的PHP文件中引入库文件,通常通过`require_once`或`include_once`...
thinkphp使用jpgraph实例,防止新手陷入误区
例如,“examples”目录下包含了各种图表类型的实例,通过查看和修改这些代码,开发者可以学习如何处理数据、设置图表属性以及生成动态图表。 此外,JpGraph还支持多种图像格式输出,包括PNG、JPEG和GD2,这使得...
7. **版本更新**:`4.2.7`版本可能包含一些性能优化、新功能和已知问题的修复,确保了库的稳定性和兼容性。 在使用JPGraph时,你需要将解压后的目录包含到你的PHP项目中,并根据需求创建实例,设置图表属性,加载...
### JPGraph 图形类库详解 #### 一、JPGraph 概述 JPGraph 是一个用 PHP 编写的强大图表生成类库,它允许开发者轻松地创建多种类型的...无论是简单的数据展示还是复杂的统计分析,JPGraph 都能提供合适的解决方案。
3. 文档:详细的技术文档阐述了库的安装、配置、使用方法以及API参考,是开发者解决问题的重要参考资料。 4. 资源文件:可能包含图片、字体等,用于图表的美化和自定义。 5. 测试脚本:这些脚本用于验证库的功能,...
本篇文章将详细介绍JpGraph 4.2.2的功能、安装过程、基本使用方法以及与MySQL的交互。 ### 一、JpGraph 4.2.2概述 JpGraph库的核心优势在于其灵活性和多样性,支持多种类型的图表,如线图、柱状图、饼图、雷达图、...