我正在生成一个条形图,目前所有的数据标签都向右对齐。
对于正值,我希望数据标签与条形图的右侧对齐,对于负值,我希望数据标签与条形图的左侧对齐。
我该如何实现这一点?
$(function () {
$('#container').highcharts({
chart: {
type: 'bar'
},
xAxis: {
categories: ['Africa', 'America', 'Asia', 'Europe', 'Oceania']
},
plotOptions: {
bar: {
dataLabels: {
enabled: true,
align: 'right',
inside: true
}
}
},
series: [{
data: [107, 31, 635, -203, -300]
}]
});
});
1条答案
按热度按时间rqqzpn5f1#
可能有很多方法可以做到这一点。一种方法是设置特定于点的
dataLabels
对象。根据数据的大小,这可以直接在系列数据上完成,像这样(JSFiddle):字符串
或者你可以在初始化图表时使用回调函数来循环你的系列,并以同样的方式设置它,像这样(JSFiddle):
型
另一种方法是使用几个系列,一个用于正,一个用于负,然后link them,并为每个系列使用不同的
align
规范。