0

我有一个谷歌仪表,可以使用 PHP 从数据库中动态检索数据,问题是我希望仪表在我使用过的底部标签中有一个后缀:

  // This is what creates the problem 
  var formatter = new google.visualization.NumberFormat({
    suffix: '%',
    fractionDigits: 0
  });
  formatter.format(data, 1);

这工作正常,直到我开始随着时间的推移改变仪表值。只有指针移动,底部女巫的标签说“值+%”保持不变。

繁忙仪表的图像

有人知道怎么修这个东西吗?!?

仪表代码:

function SOC() {
  var data = google.visualization.arrayToDataTable([
    ['Label', 'Value'],
    ['SOC', 10]
  ]);
  var options = {
    width: 250, height: 250,
    redFrom: 0, redTo: 10,
    yellowFrom: 10, yellowTo: 25,
    minorTicks: 5,
    majorTicks: ['0','25','50','75','100']
  };
  var formatter = new google.visualization.NumberFormat({
    suffix: '%',
    fractionDigits: 0
  });
  formatter.format(data, 1);
  var chart = new google.visualization.Gauge(document.getElementById('SOC'));

  chart.draw(data, options);
  setInterval(function() {
    $.ajax({
        url: "soc.php",
        dataType: "JSON",
        data:{},
        success: function(x){
          console.log(x["SOC"]);
          data.setValue(0, 1, x["SOC"] );
          chart.draw(data, options);
        }
    });
    }, 2000);
} 
4

1 回答 1

0

更新数据后尝试调用 formatter.format(data, 1) :

setInterval(function() {
          data.setValue(0, 1, 40 + Math.round(60 * Math.random()));
          formatter.format(data, 1);
          chart.draw(data, options);
        }, 1000);

看看这个小提琴

于 2017-01-02T12:30:22.473 回答