Highcharts多y轴min-max问题

时间:2014-07-08 13:09:08

标签: javascript highcharts

我有一个在y轴上有三个数据范围的高图图表。两个货币金额和一个“生存概率”,即百分比。

我需要将百分比轴的范围限制为0-100%,但我所做的一切似乎没有任何区别。

有什么想法吗?

这是小提琴:http://jsfiddle.net/moonspace/2jnrp/

这是(部分)代码:

jQuery('#chartContainer').highcharts({
        chart: { width: 600, height: 500 },
        title: { text: '' },
        credits: { enabled: false },
        xAxis: {
            categories: client_age_array,
            title: {
                text: 'Client age',
                style:{ color: '#000000', fontWeight: 'bold', fontSize: '12px' }
            },
            labels: { 
                step: 5,
                staggerLines: 1
            }
        },
        yAxis: [{ // First yAxis - Income
                    labels: {
                        style: {
                            color: gradTop,
                            fontSize: '12px'
                         }
                    },
                    title: {
                        text: 'Income',
                        style: {
                            color: gradTop,
                            fontSize: '12px'
                         }
                    },
                    opposite: true,
                    min: null,
                    max: null                   
                },
                { // Second yAxis - Fund value
                    gridLineWidth: 0,
                    labels: {
                        style: {
                            color: '#003466',
                            fontSize: '12px'
                         }
                    },
                    title: { 
                        text: 'Fund value',
                        style: {
                            color: '#003466',
                            fontSize: '12px'
                         }
                    },
                    min: null,
                    max: null
                },
                { // Third yAxis - Survival probability
                    gridLineWidth: 0,
                    labels: { 
                        format: '{value}%',
                        style: {
                            color: '#fe6f01',
                            fontSize: '12px'
                         }
                    },
                    title: { 
                        text: 'Survival probability',
                        style: {
                            color: '#fe6f01',
                            fontSize: '12px'
                        }
                    },
                    opposite: true,
                    min: 0,
                    max: 100
            }],
            tooltip: {
                formatter: function() {
                    var toolTip = '<b>Age : '+ this.x +'</b><br />';
                    jQuery.each(this.points, function(i, point) {
                        if( point.series.name == 'Survival probability' ){
                            if( isNaN(point.y) ){
                                // -- do nothing
                            }else{
                                toolTip += point.series.name + ' : ' + point.y + '<br />';
                            }
                        }else{
                            toolTip += point.series.name + ' : ' + point.y + '<br />';
                        }
                    });

                    return toolTip;
                },
                shared: true
            },
            navigation: {
                buttonOptions: {
                    verticalAlign: 'bottom',
                    y: -5
                }
            },          
        series: [
            {
                name: 'Income',
                type: 'column',
                yAxis: 0,
                data: income_array
            },
            {
                name: 'Fund value',
                type: 'spline',
                yAxis: 1,
                data: fund_value_array,
                marker: {
                    enabled: false
                }
            },
            {
                name: 'Survival probability',
                type: 'line',
                lineWidth: 0,
                yAxis: 2,
                data: survival_array_2
            }
        ],
        colors: [{
            linearGradient: perShapeGradient,
            stops: [ [0, gradTop], [1, gradBottom] ]
            },
            '#003466',
            '#fe6f01'
        ]
    });

1 个答案:

答案 0 :(得分:8)

只需将alignTicks设置为false即可获得生存概率轴。那就是它。