打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
echarts加载动态数据

实时统计

  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
  2.   
  3. <jsp:include page="/WEB-INF/view/common/header.jsp" flush="true" />  
  4.   
  5.   
  6. <script type="text/javascript" charset="utf-8" src="/resources/echarts/esl.js"></script>  
  7.   
  8.   
  9.   
  10.   
  11.   
  12.   
  13.   
  14. <div id="drawEcharts" style="height:400px;"></div>  
  15.   
  16.   
  17.   
  18.   <script type="text/javascript">    
  19.             // 路径配置    
  20.             require.config({    
  21.                 paths:{     
  22.                     'echarts' : '/resources/echarts/echarts',    
  23.                     'echarts/chart/bar' : '/resources/echarts/echarts'    
  24.                 }    
  25.             });    
  26.                 
  27.             // 使用    
  28.             require(    
  29.                 [    
  30.                     'echarts',    
  31.                     'echarts/chart/bar' // 使用折线图就加载bar模块,按需加载    
  32.                 ],    
  33.                 function (ec) {    
  34.                     // 基于准备好的dom,初始化echarts图表    
  35.                     var myChart = ec.init(document.getElementById('drawEcharts'));     
  36.                         
  37.                     var jsonNum=[13,12,12,15,20,18,8];  
  38.                      var jsonTime=[71,71,70.21,94,11,11,42];  
  39.                      var jsonDay=["1月23日","1月24日","1月25日","1月26日","1月27日","1月28日","1月29日"];  
  40.                         
  41.                      option = {  
  42.                                 title : {  
  43.                                     text: '在线直播人数',  
  44.                                     subtext: ''  
  45.                                 },  
  46.                                 tooltip : {  
  47.                                     trigger: 'axis'  
  48.                                 },  
  49.                                 legend: {  
  50.                                     data:['在线人数', '预购队列']  
  51.                                 },  
  52.   
  53.                                 dataZoom : {  
  54.                                     show : false,  
  55.                                     start : 0,  
  56.                                     end : 100  
  57.                                 },  
  58.                                 xAxis : [  
  59.                                     {  
  60.                                         type : 'category',  
  61.                                         boundaryGap : true,  
  62.                                         data : (function (){  
  63.                                             var now = new Date();  
  64.                                             var res = [];  
  65.                                             var len = 10;  
  66.                                             while (len--) {  
  67.                                                 res.unshift(now.toLocaleTimeString().replace(/^\D*/,''));  
  68.                                                 now = new Date(now - 2000);  
  69.                                             }  
  70.                                             return res;  
  71.                                         })()  
  72.                                     },  
  73.                                     {  
  74.                                         type : 'category',  
  75.                                         boundaryGap : true,  
  76.                                         data : (function (){  
  77.                                             var res = [];  
  78.                                             var len = 10;  
  79.                                             while (len--) {  
  80.                                                 res.push(len + 1);  
  81.                                             }  
  82.                                             return res;  
  83.                                         })()  
  84.                                     }  
  85.                                 ],  
  86.                                 yAxis : [  
  87.                                     {  
  88.                                         type : 'value',  
  89.                                         scale: true,  
  90.                                         name : '价格',  
  91.                                         boundaryGap: [0.2, 0.2]  
  92.                                     },  
  93.                                     {  
  94.                                         type : 'value',  
  95.                                         scale: true,  
  96.                                         name : '预购量',  
  97.                                         boundaryGap: [0.2, 0.2]  
  98.                                     }  
  99.                                 ],  
  100.                                 series : [  
  101.                                     {  
  102.                                         name:'预购队列',  
  103.                                         type:'bar',  
  104.                                         xAxisIndex: 1,  
  105.                                         yAxisIndex: 1,  
  106.                                         data:(function (){  
  107.                                             var res = [];  
  108.                                             var len = 10;  
  109.                                             while (len--) {  
  110.                                                 res.push(Math.round(Math.random() * 1000));  
  111.                                             }  
  112.                                             return res;  
  113.                                         })()  
  114.                                     },  
  115.                                     {  
  116.                                         name:'在线人数',  
  117.                                         type:'line',  
  118.                                         data:(function (){  
  119.                                             var res = [];  
  120.                                             var len = 10;  
  121.                                             while (len--) {  
  122.                                                 res.push((Math.random()*10 + 5).toFixed(1) - 0);  
  123.                                             }  
  124.                                             return res;  
  125.                                         })()  
  126.                                     }  
  127.                                 ]  
  128.                             };  
  129.                             var lastData = 11;  
  130.                             var axisData;  
  131.                             clearInterval(timeTicket);  
  132.                             timeTicket = setInterval(function (){  
  133.                                 lastData += Math.random() * ((Math.round(Math.random() * 10) % 2) == 0 ? 1 : -1);  
  134.                                 lastData = lastData.toFixed(1) - 0;  
  135.                                 axisData = (new Date()).toLocaleTimeString().replace(/^\D*/,'');  
  136.                                   
  137.                                 // 动态数据接口 addData  
  138.                                 myChart.addData([  
  139.                                     [  
  140.                                         0,        // 系列索引  
  141.                                         Math.round(Math.random() * 1000), // 新增数据  
  142.                                         true,     // 新增数据是否从队列头部插入  
  143.                                         false     // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头  
  144.                                     ],  
  145.                                     [  
  146.                                         1,        // 系列索引  
  147.                                         lastData, // 新增数据  
  148.                                         false,    // 新增数据是否从队列头部插入  
  149.                                         false,    // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头  
  150.                                         axisData  // 坐标轴标签  
  151.                                     ]  
  152.                                 ]);  
  153.                             }, 2000);  
  154.                                                   
  155.                 
  156.                     // 为echarts对象加载数据     
  157.                     myChart.setOption(option);     
  158.                 }    
  159.             );    
  160.           
  161.   </script>   
  162.   
  163. <script type="text/javascript">var timeTicket;</script>  
  164.   
  165. <jsp:include page="/WEB-INF/view/common/footer.jsp" flush="true" />  


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
openlayers5-webpack 入门开发系列结合 echarts4 实现散点图(附源码下载)
pyecharts和echarts的混合使用
echarts 基本使用
Echarts 的option选项属性
echarts通过ajax向服务器发送post请求,servlet从数据库读取数据并返回前端
初窥ECharts
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服