MapBox GL-主题化地基于客户端中的数据渲染GeoJson
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MapBox GL-主题化地基于客户端中的数据渲染GeoJson相关的知识,希望对你有一定的参考价值。
我有一个显示美国各州的geoJson图层,只有一个ID,没有其他属性。
我在内存中还有一个本地数据数组,其中包含有关这些州的许多属性:诸如人口,耕地面积,销售税率等。这些属性之一是位于geoJson层中的ID。因此,我应该能够将本地数组与geoJson图层中的要素连接在一起。
我希望能够根据那些属性中的任何一个对主题进行主题化样式设置,从而允许用户选择属性。我在MapBox中看到的关于GeoJson图层主题样式的所有示例都要求(1)属性存在于geoJson本身中,以及(2)您事先定义属性和样式规则(我不确定是否存在稍后更改此方法的方式)。
[在其他地图库中,我认为包括Leaflet在内,您都可以定义绘画功能,然后传入特征。 MapBox GL中有类似的东西吗?
谢谢。
答案
您可以通过将geojson数据和您的“属性”数据合并到单个geojson要素集中来简化生活。
一旦完成,就可以使用map.setPaintProperty(layerId, ...)
根据用户交互来更新图层样式:https://docs.mapbox.com/mapbox-gl-js/api/#map#setpaintproperty
以上是关于MapBox GL-主题化地基于客户端中的数据渲染GeoJson的主要内容,如果未能解决你的问题,请参考以下文章