首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Mapbox国家边界中获得一组国家边界

如何从Mapbox国家边界中获得一组国家边界
EN

Stack Overflow用户
提问于 2021-03-03 10:58:18
回答 1查看 603关注 0票数 3

https://codepen.io/m12n/pen/XWNRZMg?editors=0010

代码语言:javascript
复制
mapboxgl.accessToken =
  "pk.eyJ1IjoiaW50ZWxsaWdlbmNlZnVzaW9uIiwiYSI6ImNrM2l2cnk1NzBibGIzbm5yaHNycXltZmYifQ.tPEnnW5NAPmInCJDYVfJxA";
var map = new mapboxgl.Map({
  container: "map",
  style: "mapbox://styles/mapbox/dark-v10",
  zoom: 8,
  center: [-71.4935, 41.5852]
});

map.on("load", function () {
  map.addSource("countries-no-simplification", {
    type: "vector",
    url: "mapbox://mapbox.country-boundaries-v1"
  });
  map.addLayer({
    id: "countries-simplification-data",
    type: "fill",
    source: "countries-no-simplification",
    "source-layer": "country_boundaries",

    paint: {
      "fill-color": "#ff69b4",
      "fill-opacity": 0.3
    }
  });
});

上面的代码和笔显示了MapBox县边界的用法,在这里,我用颜色和低不透明度填充这一层。

因为源有多个世界观,我得到了两个边界在有争议的国家同时显示,因此得到的效果显示(更强的色彩)。

最终,我实际上想要应用一个基于特定数据点的颜色,但是现在我很高兴能够只呈现一个单一的边界(单一的世界视图?)。

我似乎不知道如何才能从源头得到一组这样的边界。

EN

回答 1

Stack Overflow用户

发布于 2022-02-28 12:30:47

您可以应用过滤器来保持特定世界视图(US、CN、IN等)的边界。移除有争议的边界。示例:

代码语言:javascript
复制
  map.addLayer({
    id: "countries-simplification-data",
    type: "fill",
    source: "countries-no-simplification",
    "source-layer": "country_boundaries",
    filter: [
        'all',
        ['match', ['get', 'worldview'], ['all', 'US'], true, false],
        ["!=", "true", ["get", "disputed"]],
    ],
    paint: {
      "fill-color": "#ff69b4",
      "fill-opacity": 0.3
    }
  });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66455645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档