Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用Mapbox GL JS和对象制作choropleth贴图?_Javascript_Mapbox_Mapbox Gl Js_Choropleth - Fatal编程技术网

Javascript 如何使用Mapbox GL JS和对象制作choropleth贴图?

Javascript 如何使用Mapbox GL JS和对象制作choropleth贴图?,javascript,mapbox,mapbox-gl-js,choropleth,Javascript,Mapbox,Mapbox Gl Js,Choropleth,我正在努力找到正确的信息,以便使用mapbox创建choropleth地图。他们的例子很模糊 我目前有一个geojson,显示了英国所有县的多边形。我使用map.addLayer将其添加到地图中,但目前,整个地图的颜色相同: map.addLayer({ "id": 'counties', "type": "fill", "source": { "type": "geojson", "

我正在努力找到正确的信息,以便使用mapbox创建choropleth地图。他们的例子很模糊

我目前有一个geojson,显示了英国所有县的多边形。我使用map.addLayer将其添加到地图中,但目前,整个地图的颜色相同:

        map.addLayer({
        "id": 'counties',
        "type": "fill",
        "source": {
            "type": "geojson",
            "data": {
                "type": "FeatureCollection",
                "features": counties
            }
        },
        "layout": {},
        "paint": {
            "fill-color": fill,
            "fill-opacity": 0.8
        }
    });
Countries是geojson文件,它还包括一个名为“County”的属性。此外,我还返回了一个对象,该对象分别返回县的键、值对以及它在我的数据中出现的次数:

{
    "Bristol": 2,
    "Cheshire": 1,
    "City and County of the City of London": 14,
    "City of Aberdeen": 1,
    "City of Edinburgh": 3
}

如何使用对象中的数据创建choropleth贴图,以作为图层的不同明暗度/颜色返回(例如,柴郡等县的颜色会较浅,因为值为1,但伦敦市的城市和县的颜色会较深,因为值为14?

最简单的方法是使用库。

最简单的方法是使用库。

您的geojson结构如何

最简单的方法是让您的功能具有一个名为“frequency”的属性。然后您可以使用Mapbox GL JS数据驱动样式,如下所示:

'fill-color': {
property: 'frequency',
stops: [[2, '#fff'], [5, '#f00']]
}

通过地图框查看此帖子:

您的geojson结构如何

最简单的方法是让您的功能具有一个名为“frequency”的属性。然后您可以使用Mapbox GL JS数据驱动样式,如下所示:

'fill-color': {
property: 'frequency',
stops: [[2, '#fff'], [5, '#f00']]
}
请按地图框选中此帖子: