Javascript 当长轴为typeofday时,如何为折线图设置hAxis.viewWindow.max?

Javascript 当长轴为typeofday时,如何为折线图设置hAxis.viewWindow.max?,javascript,google-visualization,Javascript,Google Visualization,我需要画一张图表来实时显示数据在一天内的变化。我一直在尝试如何将其可视化,但我无法设置hAxis.viewWindow.max选项,以便固定X轴 下面是我用来测试的代码: function drawVisualization() { // Create and populate the data table. var data = new google.visualization.DataTable(); data.addColumn('timeofday', 'x'); da

我需要画一张图表来实时显示数据在一天内的变化。我一直在尝试如何将其可视化,但我无法设置hAxis.viewWindow.max选项,以便固定X轴

下面是我用来测试的代码:

function drawVisualization() {
  // Create and populate the data table.
  var data = new google.visualization.DataTable();

  data.addColumn('timeofday', 'x');
  data.addColumn('number', 'S0');
  data.addColumn('number', 'S1');
  data.addColumn('number', 'S2');

  data.addRows([
    [[0,0,0,0],   1,       1,           0.5],
    [[1,0,0,0],   2,       0.5,         1],
    [[2,0,0,0],   4,       1,           0.5],
  ]);

  // Create and draw the visualization.
  new google.visualization.LineChart(document.getElementById('visualization')).
      draw(data, {curveType: "function",
                  width: 500, height: 400,
                  vAxis: {maxValue: 10},
                  hAxis: {maxValue: [23,59,59,0], minValue:[0,0,0,0], viewWindow:{max: [23, 59, 59, 0]}}}
          );
    }
文档声称hAxis.viewWindow.max接收数字,但我还没有找到将“timeofday”类型表示为数字的方法。 ​ 使用这个,X轴从凌晨0点到凌晨2点,但我需要这个轴一直到午夜

我尝试使用“datetime”作为列类型,但遇到了相同的问题

下面的示例使用数字,按照我预期的方式工作,在点所在的位置绘制线,但将栅格延伸到最大值:

function drawVisualization() {
  // Create and populate the data table.
  var data = new google.visualization.DataTable();

  data.addColumn('number', 'x');
  data.addColumn('number', 'S0');
  data.addColumn('number', 'S1');
  data.addColumn('number', 'S2');

  data.addRows([
    [0,   1,       1,           0.5],
    [1,   2,       0.5,         1],
    [2,   4,       1,           0.5],
  ]);

  // Create and draw the visualization.
  new google.visualization.LineChart(document.getElementById('visualization')).
      draw(data, {curveType: "function",
                  width: 500, height: 400,
                  vAxis: {maxValue: 10},
                  hAxis: {maxValue: 23, minValue:0, viewWindow:{max: 23}}}
          );
}

X轴最终将达到它的最大值(或在相同情况下关闭-如本例)。比如说

在下列情况下:

data.addRows([
    [[0,0,0,0],   1,       1,           0.5],
    [[1,0,0,0],   2,       0.5,         1],
  ]);
 data.addRows([
    [[0,0,0,0],   1,       1,           0.5],
    [[1,0,0,0],   2,       0.5,         1],
    [[23,59,59,0],   4,       1,           0.5],
  ]);
x轴将在1:00结束

在下列情况下:

data.addRows([
    [[0,0,0,0],   1,       1,           0.5],
    [[1,0,0,0],   2,       0.5,         1],
  ]);
 data.addRows([
    [[0,0,0,0],   1,       1,           0.5],
    [[1,0,0,0],   2,       0.5,         1],
    [[23,59,59,0],   4,       1,           0.5],
  ]);
它将在23:59:59结束,显示22:00作为最后一个x轴标签


这意味着,无论您在hAxis中定义为max的值是多少,图表都会运行到您在数据行(实际上是最后添加的行)中的max“timeofday”值。

这与文档中声称的
“指定最高水平轴网格线的hAxis属性。实际网格线将是两个值中的较大值:maxValue选项值或最高数据值,四舍五入到下一个更高的网格标记。“
即使存在hAxis.viewWindow.max参数,该参数适用于数字数据,但不适用于timeofday数据。我已经更新了这个问题来考虑这个问题,我知道。所以,如果你去保留基本样本,你可以让hAxis结束到Z。这不仅仅是一天的时间。那么,我想这是不可能的。