Javascript 如何使用Mapbox GL JS和对象制作choropleth贴图?
我正在努力找到正确的信息,以便使用mapbox创建choropleth地图。他们的例子很模糊 我目前有一个geojson,显示了英国所有县的多边形。我使用map.addLayer将其添加到地图中,但目前,整个地图的颜色相同: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", "
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']]
}
请按地图框选中此帖子: