0

我在这里有这个地图示例,我正在通过Highcharts 的 Highmaps运行。

您可以观察到,当我们在下面进行此设置时,罗马尼亚、保加利亚、塞尔维亚等国家/地区不会显示其标签,因为该国家/地区对于该缩放级别来说太小了。如果你放大到足够大,那些小国家会变大,并显示它们的标签。

dataLabels: {               
    enabled: true,
    useHTML: false,
    format: '{point.name}'
}

如果我更改为useHTML: true,则所有国家/地区标签都会一直显示,无论缩放级别是多少或国家/地区有多小,都会导致标签像这样重叠非常糟糕。

因为项目需要,坚持useHTML: true是必须的,但是这种情况下到底有没有办法实现标签的自动隐藏呢?

4

1 回答 1

1

您可以尝试使用格式化程序而不是格式并仅显示应该可见的标签。点的标签等级可能会有所帮助。一个随机的例子(但你会明白的):http: //jsfiddle.net/Lu3ec0Lv/2/

改动部分:

formatter: function () {
                        var ret = null,
                            chart = this.series.chart,
                            xExt = chart.xAxis[0].getExtremes();
                        if ((this.point.labelrank%2 + (xExt.max - xExt.min))%2) ret = this.point.name;
                        return ret;
                    }
于 2014-12-12T15:35:58.493 回答