2017-05-26 71 views
0

我玩过Mapbox,可以非常容易地在Mapbox工作室创建一个Choropleth地图,并使用Javascript进行交互。Mapbox GL /风格 - 数据分离

我想创建状态的Choropleth地图,能够更改100年不同数据点的状态颜色。我不允许将数据上传到Mapbox作为其敏感的医疗保健数据,我无法获得每月499美元的成本。

我的想法是我在MapBox Studio中创建一个mapbox样式图层,然后根据用户选择的年份x为每个状态推送数据客户端。我已经看过不少cloropeth教程,例如https://www.mapbox.com/help/choropleth-studio-gl-pt-1/,但数据是通过Mapbox Studio中的一个图层添加的。我的想法是在样式中嵌入大型GeoJson,并只将数据推送到Polygon ID,同时在两者之间创建转换。

有没有人有任何想法,如果这是可能的?也许可以帮助我实现这个https://www.mapbox.com/api-documentation/的任何有用的API请求。

回答

0

这是可能的。有两种方法:

  1. 将几何作为数据集上载到Studio中,或者直接将其作为GeoJSON加载。
  2. 直接在几何上设置数据属性。
  3. 使用数据驱动样式创建样式(例如,将“47”映射到“rgb(100,0,0)”和“153”到“rgb(250,250,0)”,并让Mapbox进行插值。

或者:

  1. 上传的几何形状的地形设置到Studio
  2. 计算要代表每个国家的每个可能值的颜色
  3. 生成映射每一个数据驱动的样式属性。国家的代码为你想要的颜色,如...['FL','rgb(143,15,0)']...

这两种方法都不能应付大量的地区,但在低分辨率下应该可以适用于50个美国州。

更多讨论:https://github.com/mapbox/mapbox-gl-js/issues/4261