是否可以选择在 Mapbox Studio 中删除一定距离内的重复点标签?

Is there an option to remove duplicate point labels within a distance in Mapbox Studio?

我正在使用 Mapbox Studio 以样式标记一些点特征(来自我上传的 GeoJSON 图层),并且有一些重复的点彼此相邻:

Mapbox Studio 中是否有自动删除重复标签的选项?例如,其他一些地图绘制程序可以选择删除指定距离(像素或地图单位)内的重复标签。这在 Mapbox Studio 中可用吗(或者在 Mapbox-GL-JS 中失败)?

Mapbox Studio 不提供自动删除重复标签的方法。您可以使用 filter to manually filter out duplicates by writing a relatively complex expression,尽管这实际上并不是表达式的预期用例。您还可以向源数据中的重复点要素添加 duplicate: true 属性,但由于这需要对源数据进行操作,因此您最好从源数据中删除重复项而不是采用这种方法.

也就是说,您可以考虑对数据进行聚类并对聚类设置样式,使聚类看起来与任何单个点都一样。 This example shows how to create and style clusters using Mapbox GL JS. Here is a JSFiddle that heavily modifies this example to cluster closely-located points, and style the clusters in the same way that individual points are styled: https://jsfiddle.net/uo216fxz/(您需要添加自己的 Mapbox 访问令牌才能查看结果)。为包含一个以上点的每个簇添加了点数的文本标签,以便您可以轻松地看到除了标签之外,簇和单个点是相同的。

除了链接的 JSFiddle 中提供的内容之外,您可能需要自定义几个属性(例如 clusterRadiusclusterMaxZoom 等),以便更具体地针对您的源数据。