0

私は学校のプロジェクトに取り組んでおり、php ファイルからデータを取得してゲージに表示しています。このJavaScriptコードを使用して、毎秒グラフを更新します:

    function requestData() {
    $.getJSON('values.php', function(data) {
            var new_value = data;
            var point = $('#ta').highcharts().series[0].points[0];
            point.update(new_value);
            setTimeout(requestData, 500)
            }

)
}

このコードを使用すると、チャートを更新できます。問題は、チャートの別の部分にも数値を表示する必要があることです。ここに私が試すものがあります:

  yAxis: {
        title: {
            text: '<div id="tav">'+new_value+'V</div>',
            useHTML: true,
            y: 80
        }

「new_value」を入力すると、チャートが機能しなくなり、何も表示されません。チャートのこの部分から「new_value」を残すと、完全に機能します。

誰かが私を助けることができますか?ありがとう

4

3 に答える 3

0

問題は、それnew_valueがローカルに定義されていることです。変数をオブジェクトのプロパティとして定義できます。

var obj = {};
function requestData() {
$.getJSON('values.php', function(data) {
        obj.new_value = data;
        var point = $('#ta').highcharts().series[0].points[0];
        point.update(new_value);
        setTimeout(requestData, 500)
        }

)
}

yAxis: {
    title: {
        text: '<div id="tav">'+obj.new_value+'V</div>',
        useHTML: true,
        y: 80
    }
于 2014-07-01T21:00:26.207 に答える
0

y 軸のタイトルを更新するには、次のようなコードを使用する必要があります。

$('#container').highcharts().yAxis[0].update({
            title:{
                text:"My text"
            }
        });

ボタンのクリック時にy軸のタイトルを動的に更新する方法のデモを作成しました:DEMO

ボタンのクリックでチャートのタイトルを動的に更新する JS コード セクション:

var chart = $('#container').highcharts();
$('#my_btn').click(function(){
    //alert('hey');
    chart.yAxis[0].update({
        title:{
            text:"My text"
        }
    });
    alert('Y-axis title changed to "My text" !');
});
于 2014-07-02T07:56:59.117 に答える