1

我有一个带有堆叠列和 2 个样条线的高图。主要 yAxis 表示堆叠列的 y 值,次要 yAxis 表示 2 个样条线。看一下演示,样条线的 y 值之一显示不正确。如果您将鼠标悬停在样条曲线上的点上,您可以看到数据正确,但显示的 y 刻度不正确。如果我注释掉“堆叠:正常”设置,则样条线会正确显示。

http://jsfiddle.net/chicmob/w2Tux/

这是一个 highcharts 错误还是我忽略了其他一些设置?

        chart: {
        type: 'column'
    },
    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    },

    plotOptions: {
        series: {
            stacking: 'normal'
        }
    },
    yAxis: [{ // Primary yAxis
        min: 0,
        max: 400,
        tickInterval:100,
    }, { // Secondary yAxis
        min: -40,
        max: 100,
        tickInterval: 20,
        opposite : true,
    }],        

    series: [{
        yAxis : 0,
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
    }, {
        yAxis : 0,
        data: [144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2]
    }, {    
        yAxis : 1,
        type : 'spline',
        data: [35, 60, 77, 56.7, 34, 55, 66, 72, 90, 45, 56, 60]
    } , {    
        yAxis : 1,
        type : 'spline',
        data: [24.3, 12, 41.2, 12.1, 4, 45, 31, 21.5, 9.3, 7.7, 13, 22]
    }]
4

1 回答 1

1

您正在将 stacking: 'normal' 应用于所有系列。实际上,您只想将其应用于 1st 2 系列。从 plotOptions 中取出 stacking: 'normal' 并将其放在第 2 个系列中:

$('#container').highcharts({
    chart: {
        type: 'column'
    },
    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    },

    yAxis: [{ // Primary yAxis
        min: 0,
        max: 400,
        tickInterval:100
    }, { // Secondary yAxis
        min: -40,
        max: 100,
        tickInterval: 20,
        opposite : true
    }],        

    series: [{
        yAxis : 0,
        stacking: 'normal',
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
    }, {
        yAxis : 0,
        stacking: 'normal',
        data: [144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2]
    }, {    
        yAxis : 1,
        type : 'spline',
        data: [35, 60, 77, 56.7, 34, 55, 66, 72, 90, 45, 56, 60]
    } , {    
        yAxis : 1,
        type : 'spline',
        data: [24.3, 12, 41.2, 12.1, 4, 45, 31, 21.5, 9.3, 7.7, 13, 22]
    }]
});

http://jsfiddle.net/w2Tux/2/

于 2013-08-02T00:36:09.290 回答