2017-06-22 100 views
1

我正在谷歌柱形图上工作。我在创建图表时创建了3列。这是那些专栏。谷歌柱形图显示不正确的日期

var dtblData = new google.visualization.DataTable(); 
dtblData.addColumn('string', 'Names'); 
dtblData.addColumn('datetime', 'Intime'); 
dtblData.addColumn('datetime', 'Outtime'); 

我正在使用以下数据在图上显示。

[{ “DISPLAY_NAME”: “阿迪提Badurkar ”, “In_time的”:{ “年”:2017年, “月”:6, “天”:22, “小时”:11, “分钟” :7, “秒”:8中, “毫秒”:470}, “Out_time相当”:{ “年”:2017, “月”:6, “日”:22 “时间”:12, “分钟”:45 , “秒”:44, “毫秒”:237}}]

这里是我的代码: -

google.charts.load('current', { 'packages': ['corechart', 'bar'] }); 
google.charts.setOnLoadCallback(drawStuff); 

function drawStuff() { 
    var chartDiv = document.getElementById('chart_div'); 
    var dtblData = new google.visualization.DataTable(); 
    dtblData.addColumn('string', 'Names'); 
    dtblData.addColumn('datetime', 'Intime'); 
    dtblData.addColumn('datetime', 'Outtime'); 

    for (var i = 0; i < data.length; i++) { 
     if (data[i].out_time.year == 0) { 
      dtblData.addRow([data[i].display_name, new Date(data[i].in_time.year, data[i].in_time.month, data[i].in_time.day, data[i].in_time.hours, data[i].in_time.minutes, data[i].in_time.seconds, data[i].in_time.miliseconds), null]); 
     } 
     else { 
      dtblData.addRow([data[i].display_name, new Date(data[i].in_time.year, data[i].in_time.month, data[i].in_time.day, data[i].in_time.hours, data[i].in_time.minutes, data[i].in_time.seconds, data[i].in_time.miliseconds), new Date(data[i].out_time.year, data[i].out_time.month, data[i].out_time.day, data[i].out_time.hours, data[i].out_time.minutes, data[i].out_time.seconds, data[i].out_time.miliseconds)]);           
     } 
    } 

    var dateinFormat = new google.visualization.DateFormat({ formatType: 'long', pattern: "dd/MM/yyyy HH:mm:ss ZZZZ" }); 
    dateinFormat.format(dtblData, 1); 
    var dateOutFormat = new google.visualization.DateFormat({ formatType: 'long', pattern: "dd/MM/yyyy HH:mm:ss ZZZZ" }); 
    dateOutFormat.format(dtblData, 2); 

    var materialOptions = { 
     //width: 900, 
     chart: { 
      title: '', 
      subtitle: 'Intime, Outime of your kids or staff' 
     }, 
     series: { 
      0: { axis: 'In Time' }, // Bind series 0 to an axis named 'In Time'. 
      1: { axis: 'Out time' } // Bind series 1 to an axis named 'Out Time'. 
     }, 
     axes: { 
      y: { 
       distance: { label: 'In Time' }, // Left y-axis. 
       brightness: { side: 'right', label: 'Out Time' }, // Right y-axis. 
      } 
     },          
    }; 

    function drawMaterialChart() { 
     var materialChart = new google.charts.Bar(chartDiv); 
     materialChart.draw(dtblData, google.charts.Bar.convertOptions(materialOptions)); 
    } 
    drawMaterialChart(); 
} 

我的问题是,在图中可以显示每月但在数据是六月。我不明白为什么当我滚动鼠标指针时显示错误的月份bar?有人可以帮我解决这个问题吗?我认为这可能是时区问题。 请看截图。 enter image description here

+0

的可能的复制[谷歌甘特图表显示错误年](https://stackoverflow.com/questions/38677163/google-gantt-chart-shows-错误年) – WhiteHat

回答