如何在高图仪表中获得两个系列数据

时间:2013-06-13 14:43:49

标签: javascript highcharts

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

[epoch data,cpu]

我希望能够创建高图表图表并显示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];

1 个答案:

答案 0 :(得分:1)

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

var secondSeries = chart.series[1];

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

我希望这会对你有帮助。