如何将高图的dataLabels更改为此图像的新位置? i want to change to this position
谢谢!
http://jsfiddle.net/ruagiahanoi/6180x5n0/
y: 58,
dataLabelss: { x: 0, y: -100 },
color: '#8aea0f',
drilldown: {
name: 'Firefox versions',
categories: ['美元 v31', '澳元 v32'],
data: [29,29],
color: ['#0078b4', '#035a82']
答案 0 :(得分:0)
这可以通过不同的方式实现。我带来的一个from this post来到这里。
http://jsfiddle.net/6180x5n0/1/
var positionLabels = function(chart) {
var series = chart.series[0],
dataLabelsGroup = series.dataLabelsGroup,
xVal;
Highcharts.each(dataLabelsGroup.element.children, function(d) {
xVal = (d.attributes.transform.value).substring((d.attributes.transform.value).indexOf('(') + 1, (d.attributes.transform.value).indexOf(','));
$(d).attr('transform', 'translate(' + xVal + ',135)')
})
};
请注意,此函数会将135px添加到数据标签的y坐标。
您需要相应地更改图表的属性:
chart: {
type: 'pie',
events: {
load: function() {
positionLabels(this)
},
redraw: function() {
positionLabels(this)
}
},
},
作为替代方案,您可能只想将数据系列标签的y
坐标设置为0
(see fiddle here)。这将使图表在重绘时更加灵活:
dataLabels: {
formatter: function () {
return this.y > 5 ? this.point.name : null;
},
color: '#ffffff',
distance: -70,
y: 0
}
如需进一步阅读,您可能会对此感兴趣: