Highcharts动态实现柱形图

来源:互联网 发布:苹果非编软件 编辑:程序博客网 时间:2024/06/06 01:53

1.认识Highcharts

       HighCharts 界面美观,由于使用JavaScript编写,所以不需要像Flash和Java那样需要插件才可以运行,而且运行速度快。最新版本Highcharts-4.2.3.

  特点:

          1.兼容性:兼容当今大部分的浏览器,包括Safari、IE和火狐等。
          2.图表类型:包括曲线图、区域图、柱状图、饼状图、散状点图和综合图表等。
          3.不受语言约束:支持ASP,PHP,JAVA,.NET等。
          4.提示功能:即将鼠标移动到某个数据点上,可以显示该点的详细数据,并且可以对显示效果进行设置。
          5.导出:表格可导出为 PDF/ PNG/ JPG / SVG 格式。
          6.输出:网页输出图表。
          7.外部数据
从服务器载入动态数据。

2.下载Highcharts-4.2.3

         http://v1.hcharts.cn/api/

3.Highcharts的实例




  1. <span style="font-size:14px;"><%@ page language="java" contentType="text/html; charset=UTF-8"  
  2.     pageEncoding="UTF-8"%>  
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >  
  4. <html>  
  5. <head>  
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
  7. <title>Insert title here</title>  
  8. </head>  
  9.     <script src="/jquery/jquery.min.js"></script>  
  10.    <script src="/highcharts/highcharts.js"></script>  
  11. <script type="text/javascript">  
  12. $(function () {  
  13.     // create the chart  
  14.     names="";  
  15.     grades="";  
  16.     xx="";  
  17.     yy="";  
  18.     $.ajax({  
  19.         url:"<%=request.getContextPath()%>/list",  
  20.         async:false,  
  21.         success:function(data){  
  22.              //对数据进行查询遍历  
  23.             for ( var i in data) {  
  24.                 var name=data[i].name;    
  25.                 var grade=data[i].grade;  
  26.                 names+=",'"+name+"'";  
  27.                 grades+=","+grade+"";  
  28.             }  
  29.             xx = names.substring(1);  
  30.              xx="["+xx+"]";  
  31.              yy=grades.substring(1);  
  32.              yy="["+yy+"]";  
  33.             aa();  
  34.         },dataType:"json"  
  35.           
  36.           
  37.     });  
  38.      
  39. });  
  40. //highcharts 图表展示  
  41. function aa(){  
  42.     //定制树状图颜色  
  43.   /*  Highcharts.setOptions({  
  44.             colors:['#8000ff']  
  45.     });  */  
  46.     //图表展示容器,与div的id保持一致  
  47.      $('#container').highcharts({  
  48.             chart: {  
  49.                 //指定图表的类型,默认是折线图(line)  
  50.                 type:"column",   
  51.                 //定制树状图颜色  
  52.                 backgroundColor: 'white',  
  53.                 events: {  
  54.                     load: function () {  
  55.                         //鼠标附上去后提示信息  
  56.                         var label = this.renderer.label('标题', 100, 120)  
  57.                         .attr({  
  58.                             fill: Highcharts.getOptions().colors[0],  
  59.                             padding: 10,  
  60.                             r: 5,  
  61.                             zIndex: 8  
  62.                         }).css({  
  63.                             color: 'red'  
  64.                         }).add();  
  65.                         setTimeout(function () {  
  66.                             label.fadeOut();  
  67.                         }, 1000);  
  68.                     }  
  69.                 }  
  70.             },title: {  
  71.                   
  72.                  //指定图表标题  
  73.                 text:'成绩单',  
  74.             },  
  75.             //动态获取数据库的名字  就是所谓的X轴  
  76.             xAxis: {  
  77.                 categories: eval(xx),  
  78.                   
  79.             },  
  80.             //动态获取数据  
  81.             series: [{  
  82.                 animation: false,  
  83.                 data: eval(yy),  
  84.             }],  
  85.             //Y轴标题  
  86.             yAxis:{  
  87.                 title:{text:"成绩"}             
  88.             },  
  89.               
  90.         });  
  91.       
  92. }  
  93. </script>  
  94. <body>  
  95.     <div id="container" style="min-width:400px;height:400px;"></div>  
  96. </body>  
  97. </html></span> 


原创粉丝点击