1. <?php
  2. require_once 'data.php';
  3. require_once 'jpgraph/src/jpgraph.php';
  4. require_once"jpgraph/src/jpgraph_bar.php";
  5. $arr1=$a->sum('answer','answer_id=1');
  6. $arr2=$a->sum('answer','answer_id=2');
  7. $arr3=$a->sum('answer','answer_id=3');
  8. $arr4=$a->sum('answer','answer_id=4');
  9. $arr5=$a->sum('answer','answer_id=5');
  10. $arr6=$a->sum('answer','answer_id=6');
  11. for($i=0;$i<10;$i++){
  12. $datay1[$i]=$arr1[$i]['numbers'];
  13. $datay2[$i]=$arr2[$i]['numbers'];
  14. $datay3[$i]=$arr3[$i]['numbers'];
  15. $datay4[$i]=$arr4[$i]['numbers'];
  16. $datay5[$i]=$arr5[$i]['numbers'];
  17. $datay6[$i]=$arr6[$i]['numbers'];
  18. }
  19. //设置显示的数据数组;
  20. //调用类库
  21. $x = array("1","2","3","4","5","6","7","8","9","10");
  22. //设置图像的大小
  23. $graph = new Graph(1000,500); //创建新的Graph对象
  24. $graph->SetScale("textlin"); //刻度样式
  25. $graph->SetShadow(); //设置阴影
  26. $graph->img->SetMargin(40,30,40,50); //设置边距
  27. $graph->graph_theme = null; //设置主题为null,否则value->Show(); 无效
  28. $ybplot1 = new BarPlot($datay1); //创建BarPlot对象
  29. $ybplot2 = new BarPlot($datay2);
  30. $ybplot3 = new BarPlot($datay3);
  31. $ybplot4 = new BarPlot($datay4);
  32. $ybplot5 = new BarPlot($datay5);
  33. $ybplot6 = new BarPlot($datay6);
  34. $barplot = new GroupBarPlot(array($ybplot1,$ybplot2,$ybplot3,$ybplot4,$ybplot5,$ybplot6));
  35. $ybplot1->SetFillColor('red'); //设置颜色
  36. $ybplot2->SetFillColor('blue'); //设置颜色
  37. $ybplot3->SetFillColor('green'); //设置颜色
  38. $ybplot4->SetFillColor('gray'); //设置颜色
  39. $ybplot5->SetFillColor('orange');
  40. $ybplot6->SetFillColor('#000');
  41. $ybplot1->value->Show(); //设置显示数字
  42. $ybplot2->value->Show(); //设置显示数字
  43. $ybplot3->value->Show(); //设置显示数字
  44. $ybplot4->value->Show(); //设置显示数字
  45. //$ybplot5->value->show();
  46. //$ybplot6->value->show();
  47. $graph->Add($barplot); //将柱形图添加到图像中
  48. $graph->title->Set("统计");
  49. $graph->xaxis->title->Set("题目"); //设置标题和X-Y轴标题
  50. $graph->yaxis->title->Set("人数(个人)");
  51. $graph->title->SetColor("black");
  52. $graph->title->SetMargin(10);
  53. $graph->xaxis->title->SetMargin(3);
  54. $graph->yaxis->title->SetMargin(-5);
  55. $graph->xaxis->SetTickLabels($x);
  56. $graph->title->SetFont(FF_SIMSUN,FS_BOLD); //设置字体
  57. $graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD);
  58. $graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD);
  59. $graph->xaxis->SetFont(FF_SIMSUN,FS_BOLD);
  60. $graph->Stroke();
  61. 本篇为博主原创文章,如需转载请注明出处,谢谢!

php柱状图多系列动态实现的更多相关文章

  1. C#进阶系列——动态Lamada(二:优化)

    前言:前几天写了一篇动态Lamada的文章C#进阶系列——动态Lamada,受园友xiao99的启发,今天打算来重新优化下这个动态Lamada的工具类.在此做个笔记,以免以后忘了. 一.原理分析 上篇 ...

  2. 【转载】C#进阶系列——动态Lamada(二:优化)

    前言:前几天写了一篇动态Lamada的文章C#进阶系列——动态Lamada,受园友xiao99的启发,今天打算来重新优化下这个动态Lamada的工具类.在此做个笔记,以免以后忘了. 一.原理分析 上篇 ...

  3. 柱状图多系列php动态实现(ec)

    <?php require_once 'data.php'; $arr1=$a->sum('answer','ask_id=1'); $arr2=$a->sum('answer',' ...

  4. C#进阶系列——动态Lamada

    前言:在DDD系列文章里面,我们在后台仓储里面封装了传递Lamada表达式的通用方法,类似这样: public virtual IQueryable<TEntity> Find(Expre ...

  5. 【转载】C#进阶系列——动态Lamada

    前言:在DDD系列文章里面,我们在后台仓储里面封装了传递Lamada表达式的通用方法,类似这样: public virtual IQueryable<TEntity> Find(Expre ...

  6. SpringBoot系列——动态定时任务

    前言 定时器是我们项目中经常会用到的,SpringBoot使用@Scheduled注解可以快速启用一个简单的定时器(详情请看我们之前的博客<SpringBoot系列--定时器>),然而这种 ...

  7. objective-c系列-动态类型和动态绑定

    /* 静态类型: 变量的类型在编译之时就被确定下来. 动态类型: 对象的类型由对象的内存里的某个结构数据来决定它是什么类型, 而不是在编译之时就被确定下来的数据类型. 对象的类型只有在运行时才知道. ...

  8. [Flex] Accordion系列-动态添加或删除Accordion容器中项目

    <?xml version="1.0" encoding="utf-8"?> <!--Flex中如何使用addChild()和removeCh ...

  9. Vue系列——动态设置img标签的src属性

    声明 本文转自:vue动态设置img的src路径 正文 相信开发的小伙伴已经遇到这个问题了,动态切换img标签的src时,写的路径就是不生效,原因是vue并没有把你的路径字符串当做路径来处理,而是直接 ...

随机推荐

  1. 【IOS】IOS综合

    取精华.去糟粕!适合iOS开发者的15大网站推荐 E:/IOS视频: IOS基础/01 苹果开发零基础教程 3780m --> 63h /02 IOS开发快速入门教程 /03  IOS开发进阶教 ...

  2. Daemon 自更新

    NSTask *task = [[NSTask alloc] init]; [task setLaunchPath:@"usr/bin/dpkg"]; [task setArgum ...

  3. Java IntelliJ IDEA 不能显示项目里的文件结构的解决方案

    按下列步骤操作:1. 关闭IDEA2.然后删除项目文件夹下的.idea文件夹3.重新用IDEA工具打开项目

  4. 多线程(三)~多线程中数据的可见性-volatile关键字

    我们先来看一段代码: ①.线程类,用全局布尔值控制线程是否结束,每隔1s打印一次当前线程的信息 package com.multiThread.thread; publicclassPrintStri ...

  5. 初识 visJs (基于html5 canvas开发的可视化框架)

    本文参考 https://github.com/almende/vis 编写并且自己总结各种快捷方式,意在帮助开发可视化图表的前端朋友快速了解visJs. vis.js Vis.js是一个基于浏览器的 ...

  6. github 专案介绍 – Python 范例:透过互动式的 Jupyter 和数学解释流行的机器学习演算法

    对于机器学习有兴趣,不少人应该会先从 Andrew Ng ( 吴恩达 ) 的机器学习课程开始,但是吴恩达的课程是使用 octave 这个工具当作练习.这个 github 项目包含使用 Python 实 ...

  7. WAKE-WIN10-SOFT-CMAKE

    1,CMAKE 官网:https://cmake.org/ 下载:https://cmake.org/download/ BING:https://www.bing.com/search?q=cmak ...

  8. 【Spring实战】—— 4 Spring中bean的init和destroy方法讲解

    本篇文章主要介绍了在spring中通过配置init-method和destroy-method方法来实现Bean的初始化和销毁时附加的操作. 在java中,我们并不需要去管理内存或者变量,而在C或C+ ...

  9. Ubuntu 14.04默认以字符界面启动

    在windows上跑虚拟机比较资源,特别当以图形界面启动时,如果宿主机性能不好,就相当卡. 让Ubuntu 14.04默认以字符界面启动的方法: 编辑文件:etc/default/grub 将  GR ...

  10. 用PHP向数据库中实现简单的增删改查(纯代码)

    <?php $con = mysql_connect("localhost:3306","root",""); if (!$con) ...