• 使用JQuery结合HIghcharts实现从后台获取JSON实时刷新图表


     项目做了一个报表,可以实时的观察呼叫中心的电话访问量,之前的版本是使用JFreechart做的,使用一段时间后出现内存溢出,服务器的内存使用量会变得很大,所以改用Ajax前台加载数据的方式实现实时报表功能,查了很久选择了JQuery结合Highcharts的方式,Highcharts是一个JS实时报表API,下面给出基本代码:

       首先,要添加JQuery和Highcharts的引用:

    Js代码  收藏代码
    1. <script type='text/javascript' src='js/jquery-1.3.2.js'></script>  
    2. <script type='text/javascript' src='js/highcharts.js'></script>  

      

       页面的body部分需要有个层用来渲染图表:

    Java代码  收藏代码
    1. <body>  
    2.     <div id="container" style="height: 400px"></div>  
    3. </body>  

       在JS中声明图表:

    Js代码  收藏代码
    1. <script type='text/javascript'>  
    2.     //<![CDATA[   
    3.     $(function(){  
    4.                  //声明报表对象  
    5.         var chart = new Highcharts.Chart({  
    6.             chart: {  
    7.                 //将报表对象渲染到层上  
    8.             renderTo: 'container'  
    9.         },  
    10.                 //设定报表对象的初始数据  
    11.         series: [{  
    12.             data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]          
    13.         }]  
    14.     });  
    15.   
    16.         function getForm(){  
    17.                                                 //使用JQuery从后台获取JSON格式的数据  
    18.             jQuery.getJSON('http://localhost:8080/JQueryPIC/ajax', null, function(data) {  
    19.                                                                 //为图表设置值  
    20.                 chart.series[0].setData(data);  
    21.             });  
    22.         }  
    23.   
    24.       
    25.         $(document).ready(function() {  
    26.             //每隔3秒自动调用方法,实现图表的实时更新  
    27.             window.setInterval(getForm,3000);   
    28.               
    29.         });  
    30.       
    31.   
    32.     });  
    33.     //]]>   
    34.     </script>  
  • 相关阅读:
    Java 线程同步
    window.onload 与 $(document).ready() 的区别
    jQuery 合成事件
    Java 线程的生命周期
    Java 控制线程
    jQuery 移除事件
    HTC组件介绍及应用
    CSS链接悬停样式
    ASP.NET读取CSV文件
    SpreadForWin 复制粘贴,剪切行
  • 原文地址:https://www.cnblogs.com/henuyuxiang/p/4274596.html
Copyright © 2020-2023  润新知