y轴的Highcharts文本标签

时间:2011-02-13 22:46:55

标签: javascript highcharts

我正在使用Highcharts,并希望显示一个简单的柱形图,但我不想使用y轴的数值,而是想使用文本值。
例如,我想使用[0,5,10,15,20]而不是[Very Low,Low,Medium,High,Very High]

我注意到使用绘图带可以做到这一点,但仍然显示数字y轴标签,只是将文本放在它们旁边。我只想显示文字标签。

2 个答案:

答案 0 :(得分:45)

您可以使用label formatter更改标签。假设您的数据形成得恰当,您可以执行以下操作:

var yourLabels = ["Very Low", "Low", "Medium", "High", "Very High"];
var yourChart = new Highcharts.Chart({
    //...
    yAxis: {        
        labels: {
            formatter: function() {
                return yourLabels[this.value];
            }
        }
    }
    //...
});

答案 1 :(得分:12)

声明一个对象,该对象将用于切换要更改的值,如下所示。

var change = {
    0: 'Very Low',
    5: 'Low',
    10: 'Medium',
    15: 'High',
    20: 'Very High'
};

然后在图表选项中使用标签格式化程序来切换它。

yAxis: {
    labels: {
        formatter: function() {
            var value = change[this.value];
            return value !== 'undefined' ? value : this.value;
        }
    }
}