仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2078|回复: 20
打印 上一主题 下一主题

[学习教程] PHP教程之利用jpgraph创立笛卡尔图表源码实例教程...

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:36:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
在我开始学习PHP以前,我从未想过要做软件工程,即便是在去听过华育国际的关于软件工程的美好前景后,因为我一直都没有想过要与代码打交道,而是想学好所学专业,做个网络工程师或者是网络安全人员。     在引见完大局部php jpgraph装置设置装备摆设教程后,行将入手下手引见若何利用jpgraph停止图表的绘制,在之前的jpgraph教程中我已引见过若何利用jpgraph创立折线图和柱状图实例教程,本教程将会起首引见两个最经常使用的图表类型实例笛卡尔图表和饼图中的笛卡尔图表创立实例。本教程将描写一切图表的经常使用特征并具体引见典范图表剧本的布局。经由过程浏览本局部,jpgraph的利用者将会对创立复杂图表剧本有一个根基的了解,同时了解中心设置和利用的定名商定是甚么。
  上面的一切jpgraph图表剧本在必定水平上是不异的布局。一切剧本都必需起首创立一个Graph类实例。Graph类代表全部图表,可以经由过程一系列数据构建一个或多个图(模子)。几近一切用来掌握图表外不雅的函数都是这个类的。
  为了感触感染一下经常使用的jpgraph对象,咱们将展现最经常使用的图表类型实例,笛卡尔图表。
  笛卡尔图表经常使用的对象(X,Y图)


利用jpgraph绘制笛卡尔图表申明
  上图根基上申明了绘制图表时所用的函数代表的寄义,上面咱们可以参考下利用jpgraph绘制图表的代码。
  jpgraph类库文档商定一切Graph类实例都存储在一个定名为$graph的变量中。为了申明一些经常使用的实例变量,下图显示了剧本中一个根基的图表所把持的对象。
全部代码以下
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
require_once &#40;"jpgraph/jpgraph.php"&#41;;
require_once &#40;"jpgraph/jpgraph_line.php"&#41;;
  
$ydata = array&#40;11,3,8,12,5,1,9,13,5,7&#41;;
$y2data = array&#40;354,200,265,99,111,91,198,225,293,251&#41;;
  
// 创立图表并制订X、Y轴的刻度品种
$width=550;$height=400;
$graph = new Graph&#40;550,400&#41;;
$graph->SetScale&#40;"textlin"&#41;;
$graph->SetY2Scale&#40;"lin"&#41;;
$graph->SetShadow&#40;&#41;;
  
// 调剂图形留白的尺寸
$graph->SetMargin&#40;50,150,60,80&#41;;
  
// 创立两个线性图形
$lineplot=new LinePlot&#40;$ydata&#41;;
$lineplot2=new LinePlot&#40;$y2data&#41;;
  
// 将图形添加到图表中
$graph->Add&#40;$lineplot&#41;;
$graph->AddY2&#40;$lineplot2&#41;;
$lineplot2->SetColor&#40;"orange"&#41;;
$lineplot2->SetWeight&#40;2&#41;;
  
// 调剂轴的色彩
$graph->y2axis->SetColor&#40;"darkred"&#41;;
$graph->yaxis->SetColor&#40;"blue"&#41;;
  
$graph->title->SetFont&#40;FF_ARIAL, FS_BOLD, 14&#41;;
$graph->title->Set&#40;"Using JpGraph Library"&#41;;
$graph->title->SetMargin&#40;10&#41;;
  
$graph->subtitle->SetFont&#40;FF_ARIAL, FS_BOLD, 10&#41;;
$graph->subtitle->Set&#40;"(common objects)"&#41;;
  
$graph->xaxis->title->SetFont&#40;FF_ARIAL, FS_BOLD, 10&#41;;
$graph->xaxis->title->Set&#40;"X-title"&#41;;
$graph->yaxis->title->SetFont&#40;FF_ARIAL, FS_BOLD, 10&#41;;
$graph->yaxis->title->Set&#40;"Y-title"&#41;;
  
// 设置模子的色彩
$lineplot->SetColor&#40;"blue"&#41;;
$lineplot->SetWeight&#40;2&#41;;
$lineplot2->SetColor&#40;"darkred"&#41;;
$lineplot2->SetWeight&#40;2&#41;;
  
// 设置模子的文本申明
$lineplot->SetLegend&#40;"Plot 1"&#41;;
$lineplot2->SetLegend&#40;"Plot 2"&#41;;
  
// 调剂其地位
$graph->legend->SetPos&#40;0.05,0.5,"right","center"&#41;;
  
// 显示图表
$graph->Stroke&#40;&#41;;
?>   jpgraph源码申明
  1、一切图表都需求从包括一个或多个类库文件的require_once语句入手下手,包括的详细目次与jpgraph装置地址有关。
  2、创立Y轴所需求的数据,一边以后绘制详细的折线图
  3、2D后果的折线类一切图表剧本都经由过程上面两种办法挪用
  $graph = new Graph($width, $height);
  $graph->SetScale(’…’);
  SetScale函数次要用来指定X、Y轴的标准类型,次要有线性(lin),利用在X和Y轴;对数(log),利用在X和Y轴;文本(text),只能利用在X轴上;整数(int),利用在X和Y轴。
  SetY2Scale函数次要用来指定第二个Y轴的标准类型。
  SetShadow函数次要给图表增添暗影后果。
  上述这两个挪用语句将会创立一个需要的Graph类实例,其代表全部图表,并指定X和Y轴应当利用甚么刻度。在上述实例中因为利用了第二个抽,所以需求剧本挪用$graph->SetY2Scale(’…’);
  4、大多半图表都需求调剂摆布高低边距,SetMargin函数就是这个意思。即,$graph->SetMargin($left,$right,$top,$bottom);
  5、然后依据之前给出的数据创立两个折线图实例并将其放到图表中,默许线的色彩是蓝色,因为此图有两个折线,所以需求调剂第二条折线的色彩和粗细。
  6、一切文本对象好比图表和轴的题目都是经常使用的文本类的实例,这意味着文本、字体、色彩的指建都是不异的办法,即
  $graph->title->SetFont(FF_ARIAL, FS_BOLD, 14);
  $graph->title->Set(”Using JpGraph Library”);
  $graph->title->SetMargin(10);
  $graph->subtitle->SetFont(FF_ARIAL, FS_BOLD, 10);
  $graph->subtitle->Set(’(common objects)’);
  设置轴的题目办法相似
  $graph->xaxis->title->SetFont(FF_ARIAL, FS_BOLD, 10);
  $graph->xaxis->title->Set(”X-title”);
  $graph->yaxis->title->SetFont(FF_ARIAL, FS_BOLD, 10);
  $graph->yaxis->title->Set(”Y-title”);
  关于jpgraph文本和字体的掌握请参考教程:jpgraph中文利用手册之文本和字体掌握教程
  7、最初,一切图标的末尾都需求挪用Stroke()或其变种函数StrokeCSIM(), StrokeCSIMIMage(),将机关的图片送回旅游器。
  利用jpgraph绘制图表思绪总结
  经由过程这个jpgraph实例,咱们可以看到利用jpgraph绘制图表的大体思绪以下
  1、引入jpgraph类库和需求绘制的图形模子文件。
  2、创立Graph实例,其是全部图表的代表,相似于PS中的画布概念,一切的图形都是在这个下面绘制的,并制订X、Y轴的刻度类型。
  3、为了雅观,不让全部图表不充溢图形,你可以调剂图形在图表中绘制时摆布高低的边距。
  4、依据相干数据创立所需求绘制的图形实例并将其放到图表中。
  5、然后就是全部图表、各类图形的题目、X、Y轴的文本申明和色彩、字体方面的设置。
  6、最初将绘制的图表输入到旅游器中显示。
  至此,利用jpgraph绘制笛卡尔图表的实例教程就引见完了,信任经由过程下面这些jpgraph源码的申明,会让你对利用jpgraph绘制图表的思绪有所融会。
  :PHP网站开辟教程-leapsoul.cn版权一切,转载时请以链接模式注明原始出处及本声明,感谢。
学习了六个多月PHP了,还是个新手,在这里受到了很多人的帮助,谢谢你们!
乐观 该用户已被删除
沙发
发表于 2015-2-4 03:41:15 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
若相依 该用户已被删除
板凳
发表于 2015-2-9 14:10:49 | 只看该作者
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
飘灵儿 该用户已被删除
地板
发表于 2015-2-22 20:16:13 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
灵魂腐蚀 该用户已被删除
5#
发表于 2015-3-4 23:13:23 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
再见西城 该用户已被删除
6#
发表于 2015-3-11 19:01:42 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
飘飘悠悠 该用户已被删除
7#
发表于 2015-3-14 13:48:42 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
老尸 该用户已被删除
8#
发表于 2015-3-22 11:56:26 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
爱飞 该用户已被删除
9#
发表于 2015-3-24 07:27:45 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
不帅 该用户已被删除
10#
发表于 2015-4-15 05:15:22 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
山那边是海 该用户已被删除
11#
发表于 2015-4-21 08:33:35 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
第二个灵魂 该用户已被删除
12#
发表于 2015-4-26 13:17:11 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
莫相离 该用户已被删除
13#
发表于 2015-6-5 20:11:34 | 只看该作者
建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。
蒙在股里 该用户已被删除
14#
发表于 2015-6-12 18:49:20 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
金色的骷髅 该用户已被删除
15#
发表于 2015-6-19 21:21:47 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
海妖 该用户已被删除
16#
发表于 2015-7-8 21:14:40 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
深爱那片海 该用户已被删除
17#
发表于 2015-7-9 02:26:05 | 只看该作者
实践是检验自己会不会的真理。
变相怪杰 该用户已被删除
18#
发表于 2015-7-12 03:49:58 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
兰色精灵 该用户已被删除
19#
 楼主| 发表于 2015-7-13 20:21:25 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
再现理想 该用户已被删除
20#
发表于 2015-7-13 20:52:54 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-4-30 08:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表