Javascript Highcharts从阵列数据更新图形

Javascript Highcharts从阵列数据更新图形,javascript,highcharts,Javascript,Highcharts,我正在使用Highcharts.js,我不确定如何更新图表 序列数据取自一个名为“data_A”的数组,但如果我更改数组中的值,图形将不会发生任何变化 另外,如果有人知道一种更好的方法从数组中获取数据并将其放入图形中,而不是现在的im方式,那将非常好,我相信有一种更好的方法 我现在的处境: 这是我的Javascript: var Data_A = []; var Data_B = []; Data_A[ 2500 ] = 98; Data_A[ 2501 ] = 95; Data_A[ 25

我正在使用Highcharts.js,我不确定如何更新图表

序列数据取自一个名为“data_A”的数组,但如果我更改数组中的值,图形将不会发生任何变化

另外,如果有人知道一种更好的方法从数组中获取数据并将其放入图形中,而不是现在的im方式,那将非常好,我相信有一种更好的方法

我现在的处境:

这是我的Javascript:

var Data_A = [];
var Data_B = [];

Data_A[ 2500 ] = 98;
Data_A[ 2501 ] = 95;
Data_A[ 2502 ] = 98;
Data_A[ 2503 ] = 98;
Data_A[ 2504 ] = 92;
Data_A[ 2505 ] = 98;
Data_A[ 2506 ] = 95;
Data_A[ 2507 ] = 98;
Data_A[ 2508 ] = 98;
Data_A[ 2509 ] = 92;

Data_B[ 2500 ] = 20;
Data_B[ 2501 ] = 30;
Data_B[ 2502 ] = 55;
Data_B[ 2503 ] = 66;
Data_B[ 2504 ] = 02;
Data_B[ 2505 ] = 20;
Data_B[ 2506 ] = 11;
Data_B[ 2507 ] = 26;
Data_B[ 2508 ] = 8;
Data_B[ 2509 ] = 96;


$(function () {

    setInterval(function(){ Data_A[ 2500 ] = Data_A[ 2500 ] + 1; },1000);

    chart = $('#container').highcharts({

        xAxis: {
            categories: []
        },

        tooltip: {
            shared: true,
            useHTML: true,            
            formatter: function() {
                HTML = "";
                HTML = HTML + "<table>";
                HTML = HTML + "<tr><td>Pressure A:</td><td>" + Data_A[this.x] + "</td></tr>";
                HTML = HTML + "<tr><td>Other data:</td><td>" + Data_B[this.x] + "</td></tr>";              
                HTML = HTML + "</table>";                
                return HTML;
            }
        },

        series: [{
            name: 'Compressebility',
            data: [
                {
                    x: 2500,
                    y: Data_A[2500],
                },
                {
                    x: 2501,
                    y: Data_A[2501],
                },
                {
                    x: 2502,
                    y: Data_A[2502],
                },
                {
                    x: 2503,
                    y: Data_A[2503],
                },
                {
                    x: 2504,
                    y: Data_A[2504],
                },
                {
                    x: 2505,
                    y: Data_A[2505],
                },
                {
                    x: 2506,
                    y: Data_A[2506],
                },
                {
                    x: 2507,
                    y: Data_A[2507],
                }
            ]
        }]

    });
});
var数据_A=[];
var数据_B=[];
数据_A[2500]=98;
数据_A[2501]=95;
数据_A[2502]=98;
数据_A[2503]=98;
数据_A[2504]=92;
数据_A[2505]=98;
数据_A[2506]=95;
数据_A[2507]=98;
数据_A[2508]=98;
数据_A[2509]=92;
数据_B[2500]=20;
数据_B[2501]=30;
数据_B[2502]=55;
数据_B[2503]=66;
数据_B[2504]=02;
数据_B[2505]=20;
数据_B[2506]=11;
数据_B[2507]=26;
数据_B[2508]=8;
数据_B[2509]=96;
$(函数(){
setInterval(函数(){Data_A[2500]=Data_A[2500]+1;},1000);
图表=$(“#容器”)。高图({
xAxis:{
类别:[]
},
工具提示:{
分享:是的,
是的,
格式化程序:函数(){
HTML=“”;
HTML=HTML+“”;
HTML=HTML+“压力A:“+Data_A[this.x]+”;
HTML=HTML+“其他数据:“+data_B[this.x]+”;
HTML=HTML+“”;
返回HTML;
}
},
系列:[{
名称:“可压缩性”,
数据:[
{
x:2500,
y:数据_A[2500],
},
{
x:2501,
y:数据_A[2501],
},
{
x:2502,
y:数据_A[2502],
},
{
x:2503,
y:数据_A[2503],
},
{
x:2504,
y:数据_A[2504],
},
{
x:2505,
y:数据_A[2505],
},
{
x:2506,
y:数据_A[2506],
},
{
x:2507,
y:数据_A[2507],
}
]
}]
});
});

如果只想更新系列中的一个点,可以使用
point.update()

但是,如果要更新整个系列,可能需要使用
series.setData()


如何使用: 首先,要处理图表对象,以下是您应该如何实例化它:

var myChart = new Highcharts.Chart({
   chart : {
            renderTo : $('#container')[0] // The element to where the chart will be rendered
        },
    // Additional options
})
要使用
Point.update()
,您可以通过
访问系列中的特定点
myChart.series[0]。数据[indexOfSpecificPoint]。更新(optionObject)

要使用
Series.setData()
,您可以通过
访问该系列
myChart.series[0]。设置数据(数据数组)

从示例中,假设您只想更新
数据\u A[2500]

这是我做的。

数据在哪里?您要在哪个数组中更改值?对不起,这是数据。。如果我在图形放置后将Data_A[2503]更改为100,我相信您希望这样:更简单的方法是使用$('#container').highcharts({//options});这里的想法是直接将图表对象分配给一个变量。使用您的建议只返回jquery dom对象,因此需要另一个代码通过
var Chart=$(“#container”).highcharts()访问图表对象本身//空参数返回在select dom元素中创建的图表对象