2

我正在尝试使用包含在任何一个基本 Mapbox 地图中的实际多边形来创建一个等值线。

具体来说,我有一个 geojson 结构,在属性对象中有一个特定于数据的属性,我希望为所有国家/地区提供不同颜色的土地填充,具体取决于特定规模的下降位置。

到目前为止, Map 类似乎同时为所有土地着色:

Map { background-color: red; }

我似乎不能这样做:

Map { [myVar > 0.4] { background-color: pink; } [myVar <= 0.4] { background-color: green; } }

我尝试使用我自己的 GeoJSON 文件中的多边形,但它们并不像 Mapbox 多边形那样干净,即使在我找到的最高分辨率下也是如此。此外,我希望能够覆盖 Mapbox 基本样式所具有的标签和其他标记,就在我的 cholorpleth 之上。

我也尝试为这些#admin[admin_level=2][maritime=0]区域着色,但它们似乎不是多边形并导致如下所示:

admin-2 区域填充失败

提前致谢!

4

1 回答 1

3

假设 Tilemill 0.10.1 并使用这个 GeoJSON(导入为countrydata)和这个 CartoCSS:

#countrydata {
  line-color:#594;
  line-width:0.5;
  polygon-opacity:1;
  polygon-fill:#ae8;
  [2014_pop>=100000] {polygon-fill:@yellow;}
  [2014_pop>=10000000] {polygon-fill:@orange;}
  [2014_pop>=20000000] {polygon-fill:@pink;}
  [2014_pop>=200000000] {polygon-fill:@red;}
}

我得到:

请注意属性如何通知颜色2014_pop。我建议使用首字母命名属性,以免编辑器感到困惑。

于 2015-08-27T20:23:44.283 回答