【问题标题】:Highstocks / Highcharts API : how to add spline/line to already rendered chart?Highstocks / Highcharts API:如何将样条线/线添加到已经渲染的图表?
【发布时间】:2015-07-04 18:12:06
【问题描述】:

我能够使用http://api.highcharts.com/highcharts#Chart.addSeries 添加/更新底部范围选择器系列,但无法找到一种方法来向顶部烛台图添加一条线,如此处示例所示:

我希望能够做类似的事情:

http://www.highcharts.com/demo/combo

但是只有在渲染之后,才会更新底部范围选择器系列,而不是在烛台系列顶部渲染,有什么建议吗?

var $chart = $("div#container-area").highcharts()
var translated = $chart.series[0].yData.map(function(c,i,a){
    return c[3]*.8
})
var sma_line = {
    type: 'spline',
    name: 'sma',
    data: translated,
    marker: {
        lineWidth: 2,
    },
    dataGrouping: {
        units: groupingUnits
    },
    seriesStacking: 'normal'
}
$chart.addSeries(sma_line, true)

相关:

【问题讨论】:

    标签: javascript highcharts


    【解决方案1】:

    问题在于缺少有关 x 值的信息。在您的图表中单击“全部”,您可能会在图表上看到第一个点,其中包含 1970 年的数据。因此,只需为您的数据附加此类信息:

            var $chart = $("#container").highcharts(),
                xData = $chart.series[0].xData, //get main data
                translated = $chart.series[0].yData.slice().map(function (c, i, a) {
                    return [xData[i], c[3] * .8]; // return array for [x, y] pair
                });
    

    还有演示:http://jsfiddle.net/oun65uq3/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多