die in unterschiedlicher Weise erreicht werden kann. Eine, die ich from this post genommen habe, kommt hier her.
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)')
})
};
Hinweis, dass diese Funktion fügt 135px auf die y-Koordinaten der Daten Etiketten.
Sie müssen entsprechend die Eigenschaften des Diagramms ändern:
chart: {
type: 'pie',
events: {
load: function() {
positionLabels(this)
},
redraw: function() {
positionLabels(this)
}
},
},
Als Alternative, können Sie einfach festlegen möchten die y
-0
der Datenreihe Etiketten Koordinate (see fiddle here). Dies wird das Diagramm flexibler machen, wenn neu gezeichnet:
dataLabels: {
formatter: function() {
return this.y > 5 ? this.point.name : null;
},
color: '#ffffff',
distance: -70,
y: 0
}
Für weitere Lesung, es könnte dich interessieren:
Placing labels inside pie chart slices (Highchart)
vielen Dank nilsole! –