0

私は、PHPを使ってデータベースからデータを動的に取得するGoogleゲージを使用していますが、問題は、ゲージの末尾に、 :Googleゲージのボトムラベルに接尾辞を追加することで変更が防止されます

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

これは、時間が経つにつれてゲージの値を変更し始めるまでうまく動作します。ポインタだけが動いて、下の魔法使いのラベルは 'value +%'が同じであると言います。

Image of the busy gauge

誰もがこの問題を解決する方法を知っていますか?!?

ゲージのためのコード:あなたのデータを更新した後(1、データ)formatter.formatを呼び出すための

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); 
} 

答えて

0

試してみてください。

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

このfiddle

をチェック・ホープ、このことができます
Krzysztof

+0

ありがとうございました!それがうまくいった! –

+0

私は助けることができてうれしいです! ;) –

関連する問題