仓酷云

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

[学习教程] PHP教程之jpgraph+php+mysql生成柱状图(含附件)

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:30:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。   

    很具体的正文,但愿对像我一样刚入门的伴侣有匡助,附代码:
    CREATE DATABASE `jpgraph`; //创立数据库
    USE `jpgraph`;
    //创立测试表
    DROP TABLE IF EXISTS `jpg_temp`;
    CREATE TABLE `jpg_temp` (
    `year` int(11) NOT NULL,
    `money` float NOT NULL,
    `number` int(11) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    //测试数据
    insert into `jpg_temp`(`year`,`money`,`number`) values (2007,150.78,120),(2008,100,90),(2009,120,100),(2010,100,78),(2011,70.56,60),(2012,90,100),(2013,140,180),(2014,150,200),(2015,130,110),(2016,110.85,150),(2020,180,230),(2050,200,210);
    //数据库链接文件
    
    /*
    * ProjectName:jpgraph
    * CreateDate:2011-5-12
    * Author:Wilr
    * Description:数据库链接
    */
    $dbConn=mysql_connect("127.0.0.1","root","root");
    if(!$dbConn)
    echo '数据库通讯掉败';
    mysql_select_db("jpgraph");
    mysql_query("set names 'utf8'",$dbConn);
    $sql= " SELECT * FROM jpg_temp";
    $result=mysql_query($sql,$dbConn);
    $rowCount=mysql_num_rows($result);
    $datay=array();
    $datax=array();
    $number=array();
    while ($row=mysql_fetch_array($result)){
    $datay[]=$row["money"];
    $datax[]=$row["year"];
    $number[]=$row["number"];
    }
    //echo each($datay);
    //print_r($datay);
    mysql_close($dbConn);
    ?>
    //生成图表类
    
    require_once ('jpgraph/jpgraph.php'); //载入根基类
    require_once ('jpgraph/jpgraph_bar.php'); //载入柱状图
    include_once('db_config.php'); //载入数据处置文件
    $graph=new Graph(900,500); //创立一个图表 指定巨细
    $graph->SetScale("textlin"); //设置坐标刻度类型
    $graph->img->SetMargin(40,180,30,40);//设置统计图边距 左、右、上、下
    //$graph->SetMarginColor("lightblue");//设置画布后台色 淡蓝色
    //$graph->SetBackgroundImage('stship.jpg',BGIMG_COPY); //设置后台图片
    //$graph->img->SetAngle(45); //设置图形在图象中的角度
    //设置题目信息
    $graph->title->Set('Wilr测试报表'); //设置统计图题目
    $graph->title->SetFont(FF_SIMSUN,FS_BOLD,20); //设置题目字体
    $graph->title->SetMargin(3);//设置题目的边距
    //设置X轴信息
    $graph->xaxis->title->Set('(单元:年)'); //题目
    $graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD,10); //题目字体 巨细
    $graph->xaxis->title->SetColor('black');//色彩
    $graph->xaxis->SetFont(FF_SIMSUN,FS_BOLD,10);//X轴刻度字体 巨细
    $graph->xaxis->SetColor('black');//X轴刻度色彩
    $graph->xaxis->SetTickLabels($datax); //设置X轴标志
    $graph->xaxis->SetLabelAngle(0);//设置X轴的显示值的角度;
    //设置Y轴的信息
    $graph->yaxis->SetFont(FF_SIMSUN,FS_BOLD,10);//题目
    $graph->yaxis->SetColor('black');//色彩
    $graph->ygrid->SetColor('black@0.9');//X,y穿插表格色彩和通明度 @为水平值
    $graph->yaxis->scale->SetGrace(0);//设置Y轴显示值柔韧度(注释有点成绩 呵呵 谅解)
    //设置数据
    $bplot1 = new BarPlot($datay);
    $bplot2 = new BarPlot($number);
    //设置柱状图柱色彩和通明度
    $bplot1->SetFillColor('orange@0.4');
    $bplot2->SetFillColor('brown@0.4');
    //设置值显示
    $bplot1->value->Show(); //显示值
    $bplot1->value->SetFont(FF_SIMSUN,FS_BOLD,10);//显示字体巨细
    $bplot1->value->SetAngle(90); //显示角度
    $bplot1->value->SetFormat('%0.2f'); //显示格局 0.2f:准确到小属数点后2位
    $bplot2->value->Show();
    $bplot2->value->SetFont(FF_SIMSUN,FS_BOLD,10);
    $bplot2->value->SetAngle(90);
    $bplot2->value->SetFormat('%0.0f');
    //设置图列标签
    $graph->legend->SetFillColor('lightblue@0.9');//设置图列标签后台色彩和通明度
    $graph->legend->Pos(0.01,0.12,"right","center");//地位
    $graph->legend->SetFont(FF_SIMSUN,FS_NORMAL,10);//显示字体 巨细
    $bplot1->SetLegend('花费金额(单元:万元)');
    $bplot2->SetLegend('人数(单元:万人次)');
    //设置每一个柱状图的色彩和暗影通明度
    $bplot1->SetShadow('black@0.4');
    $bplot2->SetShadow('black@0.4');
    //生成图列
    $gbarplot = new GroupBarPlot(array($bplot1,$bplot2));
    $gbarplot->SetWidth(0.5); //柱状的宽度
    $graph->Add($gbarplot);
    $graph->Stroke(); //输入图象
    ?>
   
  附件:
后果图.zip (25 K)
也或许是因为我还没有真正的学到深处吧,说实在的,PHP中的很多高级点的应用,如PHP类、PHP函数基本还是不懂吧!
再见西城 该用户已被删除
沙发
发表于 2015-2-4 00:07:40 | 只看该作者
做为1门年轻的语言,php一直很努力。
冷月葬花魂 该用户已被删除
板凳
发表于 2015-2-8 20:25:13 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
深爱那片海 该用户已被删除
地板
发表于 2015-2-26 03:47:30 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
透明 该用户已被删除
5#
发表于 2015-3-8 11:10:11 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
飘灵儿 该用户已被删除
6#
发表于 2015-3-10 22:08:05 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
小魔女 该用户已被删除
7#
发表于 2015-3-14 14:52:52 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
灵魂腐蚀 该用户已被删除
8#
发表于 2015-3-15 14:38:11 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
因胸联盟 该用户已被删除
9#
发表于 2015-3-15 21:56:33 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
金色的骷髅 该用户已被删除
10#
发表于 2015-3-22 05:10:34 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
再现理想 该用户已被删除
11#
发表于 2015-3-25 09:32:40 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
海妖 该用户已被删除
12#
发表于 2015-3-27 00:08:20 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
分手快乐 该用户已被删除
13#
发表于 2015-4-1 17:36:17 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
变相怪杰 该用户已被删除
14#
发表于 2015-4-28 12:26:44 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
谁可相欹 该用户已被删除
15#
发表于 2015-5-1 20:10:42 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
小女巫 该用户已被删除
16#
发表于 2015-6-7 22:26:50 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
蒙在股里 该用户已被删除
17#
发表于 2015-6-9 11:50:07 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
简单生活 该用户已被删除
18#
发表于 2015-6-22 22:41:38 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
若相依 该用户已被删除
19#
发表于 2015-7-7 10:42:54 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
莫相离 该用户已被删除
20#
发表于 2015-7-8 04:27:00 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-15 07:49

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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