Mapbox GL / style - 数据分离

时间:2017-05-26 09:30:06

标签: mapbox mapbox-gl-js

我玩过Mapbox,可以很容易地在Mapbox工作室中创建一个Choropleth地图,并在Javascript中与它进行交互。

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

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

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

1 个答案:

答案 0 :(得分:0)

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

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

    1. 将几何图形作为Tileset上传到Studio。
    2. 计算要表示每个州的每个可能值的颜色。
    3. 生成数据驱动的样式属性,将每个州的代码映射到您想要的颜色,例如...['FL','rgb(143,15,0)']...
    4. 这两种方法都不能应对大量地区,但对于低分辨率的美国50个州来说应该没问题。

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