Highcharts 海图范围选择器ytd

Highcharts 海图范围选择器ytd,highcharts,highstock,Highcharts,Highstock,我有一个highstock图表,导航器与4个highcharts图表同步。我最初希望在所有5个图表上显示YTD,但下面给出了一个xaxis错误。看起来需要在呈现所有图表后设置。我试过好几个地方都没用 rangeSelector: { selected: 3 }, 有什么建议吗 如果不太麻烦的话,给你。5个图表的代码太长,无法在此显示。单击任何图标。问题在于设置rangeSelector.selected:3会触发xAxis.events.setextrems函数,该函数引用尚未初始化的

我有一个highstock图表,导航器与4个highcharts图表同步。我最初希望在所有5个图表上显示YTD,但下面给出了一个xaxis错误。看起来需要在呈现所有图表后设置。我试过好几个地方都没用

rangeSelector: {
    selected: 3
},
有什么建议吗


如果不太麻烦的话,给你。5个图表的代码太长,无法在此显示。单击任何图标。

问题在于设置
rangeSelector.selected:3
会触发
xAxis.events.setextrems
函数,该函数引用尚未初始化的其他图表,并导致错误

要解决此问题,只需将
chart1
构造函数移到末尾,然后先处理其他图表

简言之:

$('#container2').highcharts({
    // ...
});
$('#container3').highcharts({
    // ...
});
$('#container4').highcharts({
    // ...
});
$('#container5').highcharts({
    // ...
});
$('#container1').highcharts('StockChart', {
    rangeSelector: {
        selected: 3
    },
    xAxis: {
        events: {
            setExtremes: function (e) {
                var thisMin = e.min,
                    thisMax = e.max,
                    chart2 = $('#container2').highcharts();
                chart3 = $('#container3').highcharts();
                chart4 = $('#container4').highcharts();
                chart5 = $('#container5').highcharts();

                chart2.xAxis[0].setExtremes(thisMin, thisMax);
                chart3.xAxis[0].setExtremes(thisMin, thisMax);
                chart4.xAxis[0].setExtremes(thisMin, thisMax);
                chart5.xAxis[0].setExtremes(thisMin, thisMax);
            }
        }
    },
    // ...
});

如果你不介意的话,出于某种原因,我无法让顶部的高股价图表点与底部的4个高股价图表点对齐。我不知道从哪里开始找。你能给我指个推荐人吗?