0

このコードが中央の左側に配置された状態で、列が上に移動している場合は列内のデータラベルを上に、列が下に移動している場合は下にデータラベルを取得しようとしています。

plotOptions: {
        series: {
        stacking: 'normal',
            dataLabels: {
                align: 'top',
                enabled: true,
                formatter: function() {
                    return this.y.toFixed(2) +' %';
                }
            }
        }
    },

どうすればいいですか?また、highchartsで表示される列の幅がテキストほど広くない場合、それを確認して、代わりにテキストを列に配置するにはどうすればよいですか?

4

1 に答える 1

2

変換関数を使用して、データラベルを負の列の一番下に「移動」できます。

http://jsfiddle.net/wMLg6/33/

 var datalabel;

        $.each(chart.series[0].data,function(j,data){
            if(data.y < 0)
            {
                datalabel = data.dataLabel;
                datalabel.translate(datalabel.x,data.plotY-20);
            }
        });
于 2013-02-28T14:20:37.923 に答える