Warm tip: This article is reproduced from serverfault.com, please click

highcharts-如何在数据标签之间添加距离/间距

(highcharts - How to add distance/spacing between datalabels)

发布于 2020-12-01 10:14:33

如果我有大量数据,则数据标签重叠。在这种情况下如何在数据标签之间增加间距。

[
https://jsfiddle.net/3ekhdqov/1/][1]
Questioner
Nita Patil
Viewed
11
ppotaczek 2020-12-01 21:17:14

防碰撞数据标签没有内置的逻辑,但是你可以根据需要实施一些逻辑。例如,你可以translateY基于点的y来编辑属性

    chart: {
        zoomType: 'xy',
        events: {
            render: function() {
                var series = this.series;

                series[0].points.forEach(function(point, index) {
                    if (Math.abs(series[1].points[index].y - point.y) < 20) {
                        console.log(point.dataLabel)
                        point.dataLabel.attr({
                            translateY: point.dataLabel.y + 20
                        });
                    }
                });
            }
        }
    }

现场演示: https : //jsfiddle.net/BlackLabel/bg0eyh2t/

API参考: https ://api.highcharts.com/class-reference/Highcharts.SVGElement#attr