スタック ラベルに問題があります。それらを-90度回転させ、整列を左に、垂直整列を下に設定しました。しかし、何らかの理由で、ラベルが各列の下部に配置されていますが、期待どおりではありません。テキスト ラベルの中央は、ラベルの最初の文字ではなく、下部に揃えられます。個々のスタック ラベルごとに y オフセットを手動で計算せずに、目的を達成する方法はありますか? そうでない場合、その面倒な計算をどのように行うのが最善でしょうか?
添付のフィドルを参照してください:
$(function () {
$('#container').highcharts({
chart: { type: 'column' },
title: { text: '' },
xAxis: { categories: [""] },
yAxis: [{
title: { text: '', style: { color: '#4572A7'} },
labels: {
formatter: function () { return Highcharts.numberFormat(this.value, 0) + " USD" },
style: { color: '#4572A7' }
},
stackLabels: {
enabled: true,
style: { fontSize: '1.5em', fontWeight: 'bold', color: 'black' },
formatter: function () { return this.stack; },
rotation: -90, x: -5,
verticalAlign: 'bottom',
align: 'left'
}}],
legend: { borderWidth: 1, shadow: false },
plotOptions: {
column: { stacking: 'normal' },
series: { shadow: false}
},
series: [{ data: [34, 34, 54, 12, 23], stack: 'Stack 1' }]
});
});
乾杯!
編集
これは私が実際に持っているものの単純化されたバージョンです。私の実際のグラフには動的なコンテンツがあるため、スタック ラベルにはさまざまなテキストがあり、列の高さはさまざまです。これは事前にわかっていないため、実際のラベルのテキストの長さに関係なく、スタックラベルを列の下部 (および左側) に動的に調整する必要があります。
再度、感謝します!