Javascript 获取对海图的引用

Javascript 获取对海图的引用,javascript,highcharts,Javascript,Highcharts,我在id为container的div中呈现Highcharts图表,如下所示: new Highcharts.Chart({ chart: { renderTo: 'container', type: 'line', zoomType: 'x' }, xAxis: { categories: ['Jan', 'Feb'] }, series: [{ data: [29.9,

我在id为
container
的div中呈现Highcharts图表,如下所示:

new Highcharts.Chart({
    chart: {
        renderTo: 'container',
        type: 'line',
        zoomType: 'x'
    },

    xAxis: {
        categories: ['Jan', 'Feb']
    },

    series: [{
        data: [29.9, 71.5]
    }]
});

请注意,我没有在变量中捕获对图表对象的引用。在图表呈现后的某个时刻,是否可以使用jQuery从图表对象呈现到的元素ID(
container
)中获取对图表对象的引用

var Mychart=$("#container").data('highchartsChart');


或者通过Highcharts的图表数组([0]如果您的图表是第一个)


您可以通过Highcharts对象访问它。使用Highcharts创建的每个图表都将被推入Highcharts的
图表
数组中。如果这是您创建的第一个图表,您可以像这样获得对它的引用:

var chart = Highcharts.charts[0];
元素本身将在其
dataset
属性中包含对上述数组索引的引用。同样,如果这是您创建的第一个图表,您将看到如下内容:

document.getElementById('container').dataset;

> DOMStringMap { highchartsChart: "0" }
highchartshart
属性包含相关的数组索引,您可以使用该索引确保选择了正确的图表:

var index = document.getElementById('container').dataset.highchartsChart,
    chart = Highcharts.charts[index];

Highcharts.chart[0]
导致此错误
TypeError:Highcharts.chart未定义
@Dónal抱歉,这是一个打字错误,
chart
应该是
charts
Highcharts.charts[0]
。我改变了答案。
document.getElementById('container').dataset;

> DOMStringMap { highchartsChart: "0" }
var index = document.getElementById('container').dataset.highchartsChart,
    chart = Highcharts.charts[index];