Mapbox gl绘制将名称添加到多边形

标签 mapbox mapbox-gl-js mapbox-marker

我正在使用mapbox,我试图弄清楚的一件事是如何在我刚刚创建的多边形上设置名称。我有一个要素集合,每个要素都有一个名称,但我不知道如何在多边形上显示名称。

最佳答案

一般来说,如果您想在 Mapbox GL JS map 中显示 GeoJSON 功能以及标签,则需要在 map 中添加两个引用 GeoJSON 源的图层。一层的类型为 fill显示多边形本身,另一个的类型为 symbol显示标签的文本。

This example演示如何添加带有 text-fieldsymbol 图层,其中包含 GeoJSON 源中 Point 要素的名称。如果您有要显示名称的每个多边形的坐标,则可以按照此示例在使用 fill 图层添加多边形后添加名称。

否则,您将需要计算要添加名称的每个多边形的质心坐标。为此,您可以使用 Turf's centroid methodFeatureCollection 中的每个多边形上生成所述坐标,并添加代表每个要素名称的 symbol 图层以及生成的坐标。

关于Mapbox gl绘制将名称添加到多边形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60103912/

相关文章:

javascript - 使用 Mapbox 添加自定义图标和标记数据

javascript - MapboxGL 根据从文件加载的数据的属性设置可见性

Mapbox GL JS : Add layer below US state labels?

swift - 是否可以使 MGLPolyLines 可选? - swift , map 框

javascript - 有没有一种方法可以计算从一点到另一点的方位 Angular ?

javascript - 检测软件与硬件 webGL 渲染模式

javascript - mapbox map 层控件与 javascript

react-native - 如何在 React Native 中使用 mapbox 标记集群?

javascript - map 框绘图标记位置错误

java - 在 MapBox 上添加标记的最佳方法是什么?