26

私は Highcharts を使用していて、単純な縦棒グラフを表示したいと考えていますが、y 軸に数値を使用する代わりに、テキスト値を使用したいと考えています。
たとえば、[0,5,10,15,20]I would like to useの代わりに[Very Low,Low,Medium,High,Very High].

プロット バンドを使用してこれを行うことはいくらか可能であることに気付きましたが、それでも数値の y 軸ラベルが表示され、その横にテキストが配置されるだけです。テキスト ラベルのみを表示したい。

4

2 に答える 2

47

ラベル フォーマッタを使用して、ラベルを変更できます。データが適切に形成されていると仮定すると、次のようなことができます。

var yourLabels = ["Very Low", "Low", "Medium", "High", "Very High"];
var yourChart = new Highcharts.Chart({
    //...
    yAxis: {        
        labels: {
            formatter: function() {
                return yourLabels[this.value];
            }
        }
    }
    //...
});
于 2011-02-21T18:56:59.870 に答える
13

次のように、変更する値を切り替えるために使用されるオブジェクトを宣言します。

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;
        }
    }
}
于 2013-02-15T03:47:03.530 に答える