在谷歌图表折线图的x轴上显示日期,而不是时间戳

Show dates, not timestamps on x-axis of Google Charts line chart?

本文关键字:日期 显示 时间戳 谷歌 折线图      更新时间:2023-09-26

下面是我使用Google Charts API绘制折线图的函数。用于d1、d2、d3和d4的时间戳是-

2006年1月1日00:00:00至2009年1月01日00:00:00

当我在Chrome调试器中设置断点时,d1-d4显示为Sun Jan 01 2006 06:00:00 GMT+0000 (GMT Standard Time)等…

我需要的粒度是"天",我不在乎分/秒。无论如何,这是另一个问题,因为我现在甚至无法获得任何渲染,使用此函数时我只得到一个空白页。我做错了什么?

function drawChart() {
    var d1 = new Date();
    var d2 = new Date();
    var d3 = new Date();
    var d4 = new Date();
    d1.setTime(1136095200*1000);
    d2.setTime(1167631200*1000);
    d3.setTime(1199167200*1000);
    d4.setTime(1230789600*1000);
        var data = google.visualization.arrayToDataTable([
          ['Year', 'Sales', 'Expenses'],
          [d1,  1000,      400],
          [d2,  1170,      460],
          [d3,  660,       1120],
          [d4,  1030,      540]
        ]);
        var options = {
          title: 'Company Performance'
        };
        var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
        chart.draw(data, options);
      }

来自参考:

类型可以是以下类型之一:"string"number"boolean"date"datetime"timeofday"。

它将类型推断为"datetime",因为您没有显式声明它。请尝试使用addColumn将其直接添加为date

var data = new google.visualization.DataTable();
data.addColumn('date', 'Date');