0

我正在调用一个输出两个数据点的 php 脚本的 ajax

[纪元数据,cpu]

我希望能够创建 highchart guage 图表并显示 cpu 利用率,并且作为数据标签,我希望显示我从 php 调用中获得的时间。

function request_cpu_Data() {
    $.ajax({
        url: 'get_cpu.php', 
        success: function(data) {
        var myObj = JSON.parse(data); 
        var point = cpu_chart.series[0].points[0];
        var point1 = cpu_chart.series[1].points[0];
        var newVal=myObj[1];
        var newVal1=myObj[0];
        point.update(newVal);
        point1.update(newVal1);

        setTimeout(request_cpu_Data, 10000000); 
        },
        cache: false
    });
}

我的系列选项是这样的:

series: [{
            name: 'CPU',
            data: [0]

            },{
            name: 'Date',
            data: []
            }
        ]

我收到此错误:

Uncaught TypeError: Cannot call method 'update' of undefined

这就是你设置第二个系列的方式吗?

var point1 = cpu_chart.series[1].points[0];
4

1 回答 1

1

您的第二个系列不包含数据,因此您的 cpu_chart.series[1].points 是一个空数组。您必须使用setDataif data.lenght === 0,如下所示:

var secondSeries = chart.series[1];

if (secondSeries.data.length === 0) {
    secondSeries.setData([newValue]);
} else {
    secondSeries.points[0].update(newValue);
}

我希望这会对你有所帮助。

于 2013-06-13T21:39:37.553 回答