程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> highcharts時間圖,highcharts

highcharts時間圖,highcharts

編輯:JAVA綜合教程

highcharts時間圖,highcharts


  這篇文章適合對highcharts已經有一定了解的猿友。
  前兩天想用highcharts做一個時間圖,但是時間軸(x軸)的時間坐標並不是等間隔的,之前一直采用的方法是把時間做成等間隔的,然後沒有數據的時間點數據填充為null.這種策略顯然不好,LZ想從根本上解決這一問題,讓highcharts自己對時間進行處理,思路當然就是借助highcharts本身的機制.(版本:Highcharts-4.2.6)。

  翻看highcharts api,xAxis部分的type屬性可取值有datetime,點擊查看 datetime with irregular intervals例子:

  

  LZ按照這個例子整理了一個基於本地時間的散點圖:

<!DOCTYPE html>
<html>
    <head>
    <script src="http://code.jquery.com/jquery-1.8.2.js"></script>
    <script src="https://code.highcharts.com/highcharts.js"></script>
    <script type="text/javascript">
        //數據
        //1.數據格式是這樣的,一個時間和一個數據點放在一起。
        //另外,時間以時間戳的形式展示,實際開發中時間往往是以yyyy-MM-dd hh:mi:ss格式存在數據庫中,
        //以java為例:從數據庫拿到java.util.Date後,直接調用getTime()方法即可。
        var data = [[1478050088000,856],
                    [1478050364000,781],
                    [1478050786000,744],
                    [1478050864000,732],
                    [1478050775000,775],
                    [1478050297000,785]];
    
        $(function () {
            drawChart();
        });
        
        
        function drawChart(){
            //2.highcharts默認使用utc時間格式,關閉utc,使用本地時間
            Highcharts.setOptions({
                   global: {
                       useUTC: false 
                   }
            });
            var chartPic = new Highcharts.Chart({
                colors: ["#01D26D"],
                chart: {
                    renderTo: 'content',
                    type: 'scatter',
                    zoomType: 'xy',
                },
                title: {
                    text: ''
                },
                subtitle: {
                    text: ''
                },
                exporting: {
                    enabled:false//右上角打印等信息
                },
                credits:{
                     enabled:false //禁用版權信息
                },
                tooltip: {
                    headerFormat: '<span>',
                    pointFormat: '<table>'+
                                 '<tr><td>' +
                                 '<td><b>{point.y:.0f}</b></td></tr>',
                    footerFormat:'</table>',
                    shared: true,
                    useHTML: true,
                    xDateFormat:'%Y-%m-%d %H:%M:%S '
                },
                //3.type:"datetime"
                xAxis: {
                    type:"datetime",
                    dateTimeLabelFormats: {
                        millisecond: '%Y-%m-%d %H:%M:%S',
                        second: '%Y-%m-%d %H:%M:%S',
                        minute: '%Y-%m-%d %H:%M:%S',
                        hour: '%Y-%m-%d %H:%M:%S',
                        day: '%Y-%m-%d %H:%M:%S',
                        month: '%Y-%m-%d %H:%M:%S',
                        year: '%Y-%m-%d %H:%M:%S'
                    }           
                   
                },
                yAxis: {
                    title: {
                        text: 'yname'
                    },
                    plotLines: [{
                        value: 0,
                        width: 1,
                        color: '#808080'
                    }]
                },
                legend: {
                    layout: 'vertical',
                    align: 'center',
                    verticalAlign: 'bottom',
                    borderWidth: 0
                },
                series: [{      
                    name:'series',
                    data:data
                        }]
            });
        }
        
        </script>
    </head>

    <body >
        <div id="content" ></div>
    </body>
</html>

 

  效果圖:

  

 

   生平第一次寫博客,這樣講不知道大家能不能看懂。

  

  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved