我有一个要求,我希望我的饼图只显示前3个数据标签,而不是显示所有并填充空间。是否有可用的内置高图api或最佳解决方案来实现这一目标?
这是我的jsfiddle: http://jsfiddle.net/k80ayx1t/
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true
},
showInLegend: true
}
}
我已经搜索了足够的内容,并在发布此问题之前尝试找到解决方案,但没有找到任何帮助。
答案 0 :(得分:0)
您可以使用dataLabels.formatter函数仅返回特定的dataLabels(对于值足够大的点)。
formatter: function() {
var val = this.y,
allData = $.extend(true, [], this.series.processedYData).sort(),
length = allData.length;
if (length - 4 >= 0 && val > allData[length - 4])
return val;
}
我正在排序我的yValues然后我正在检查我的dataLabels点y值是否大于或等于我的系列的第三个y值。如果它更大或相等,我会返回值,否则我不会返回任何东西。
在这里,您可以找到一个示例:http://jsfiddle.net/k80ayx1t/1/