Mapbox在addLayer内部使用JavaScript函数

时间:2019-05-20 15:45:26

标签: javascript mapbox

我已经使用Mapbox创建了一个群集地图,我想自定义地图内的群集编号。在此示例中,我在"{data}"中有"text-field":,并且我正尝试舍入该数字。例如:24124.324123123。

// Cluster counter  
  map.addLayer({
    id: "cluster-count",
    type: "symbol",
    source: "sites",
    filter: ["has", "point_count"],
    layout: {
      "text-field": "{data}",
      "text-size": 12,
    },
    paint: {
      "text-color": "red",
    }
 });

我尝试了其他解决方案,例如:"text-field": parseFloat("{data}").toFixed(2),,但是它不起作用。

我如何使用一些JavaScript函数对图层的输出进行总体化?

1 个答案:

答案 0 :(得分:0)

  

我如何使用一些JavaScript函数对图层的输出进行总体化?

这个问题的简短答案是你不能。图层是静态定义的,因此无法按照您描述的方式在其中执行任何功能。

但是,Mapbox的样式表达式使您可以实现这一目标。我强烈建议您查看文档,以了解可能的情况:https://docs.mapbox.com/mapbox-gl-js/style-spec/#expressions

本教程尤其应帮助您熟悉它们:https://docs.mapbox.com/help/tutorials/mapbox-gl-js-expressions/


⚠️免责声明:我目前在Mapbox⚠️

工作