如何将次轴添加到高股价图中

How do I add secondary axis to highstock charts?

本文关键字:高股价 添加      更新时间:2023-09-26

当谈到javascript时,我仍然非常兴奋。我需要一些帮助,将一个类似收入的辅助轴添加到一个高库存图表中,该图表也使用$.getJSON(JSONP)来获取一个json文件来填充数据。

请查看此处的JSFiddle示例。这是要玩的示例数据集。最后,以Highcharts中的次轴为例。

$(function () {
    var seriesOptions = [],
        seriesCounter = 0,
        names = ['MSFT', 'AAPL', 'GOOG'],
        // create the chart when all data is loaded
        createChart = function () {
            $('#container').highcharts('StockChart', {
                rangeSelector: {
                    selected: 4
                },
                yAxis: {
                    labels: {
                        formatter: function () {
                            return (this.value > 0 ? ' + ' : '') + this.value + '%';
                        }
                    },
                    plotLines: [{
                        value: 0,
                        width: 2,
                        color: 'silver'
                    }]
                },
                yAxis: {
                floor: 0
            },
                plotOptions: {
                    series: {
                        compare: 'value'
                    }
                },
                tooltip: {
                    pointFormat: '<span style="color:{series.color}">{series.name}</span>: <b>{point.y}</b> ({point.change}%)<br/>',
                    valueDecimals: 2
                },
                series: seriesOptions
            });
        };
    $.each(names, function (i, name) {
        $.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=' + name.toLowerCase() + '-c.json&callback=?',    function (data) {
            seriesOptions[i] = {
                name: name,
                data: data
            };
            // As we're loading the data asynchronously, we don't know what order it will arrive. So
            // we keep a counter and create the chart when all the data is loaded.
            seriesCounter += 1;
            if (seriesCounter === names.length) {
                createChart();
            }
        });
    });
});

非常感谢任何帮助和解释(以便我学习)。我仍在努力学习如何将jsonp和图表联系在一起,尤其是多个系列的数据和json文件。

这样写:

yAxis: [{
    labels: { ... },
    title: { ... },
    ...
},
{
    labels: { ... },
    title: { ... },
    ...
}]

http://jsfiddle.net/5eem7a2a/1/