首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用ISO 3166-1 alpha-3国家代码过滤边界分界线

用ISO 3166-1 alpha-3国家代码过滤边界分界线
EN

Stack Overflow用户
提问于 2020-03-08 22:10:55
回答 1查看 381关注 0票数 1

是否有可能通过ISO 3166-1 alpha-3国家代码过滤边界分界线?如果是,那怎么做?我在文件里查过了,但什么也没找到。这就是我目前如何过滤两个字符的国家代码iso_3166_1,我尝试把它从'iso_3166_1‘改为'iso_3166_1_alpha_3',这是引用不同的东西时发现的,但是它不起作用。

代码语言:javascript
复制
mapBox.on('load', () => {
    mapBox.addSource('admin-1', {
        type: 'vector',
        url: 'mapbox://mapbox.boundaries-adm1-v3'
    });

    var countriesToDisplay: Array<string> = ['US', 'NZ']

    countriesToDisplay.forEach((countryCode: string) => {
        mapBox.addLayer({
            id: 'admin-1-fill-' + countryCode,
            type: 'fill',
            source: 'admin-1',
            'source-layer': 'boundaries_admin_1',
            filter: ['any', ['all', ['==', ['get', 'iso_3166_1'], countryCode]]],
            paint: { 'fill-color': '#044e9c' }
        }, 'waterway-label');
    });
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-28 21:23:53

Mapbox边界v3 tileset在实际的瓷砖中只有几个特性,对于多边形,它们是:

  • id
  • iso_3166_1
  • worldview

在这里查看完整的参考文档:https://docs.mapbox.com/vector-tiles/reference/mapbox-boundaries-v3/#polygon-tileset-reference

其余的数据存储在补充查找表中,这些表是在您购买tileset时发送的。您可以在这里看到所有可用的属性:https://docs.mapbox.com/help/tutorials/get-started-mapbox-boundaries/#feature-lookup-tables

您需要执行一个数据连接,以便在您的javascript中访问这些查找表中的数据。有一个教程在这里引导您完成这个过程:https://docs.mapbox.com/help/tutorials/data-joins-with-mapbox-boundaries/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60592557

复制
相关文章

相似问题

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