【问题标题】:Large GeoJSON not working w/ MapBox GL大型 GeoJSON 无法使用 MapBox GL
【发布时间】:2016-11-05 18:45:14
【问题描述】:

我已经安装了 MapBox GL JS,但它不会加载大型 (~75MB) GeoJSON 文件。控制台不会抛出任何错误,但地图上没有显示任何内容。不起作用的文件位于here

脚本对于较小的文件没有问题,例如this one。它正确加载并突出显示。

我的代码很简单(适用于较小的数据集):

map.addSource('plutodata', {
        type: 'geojson',
        data: 'http://173.254.28.39/~keggera1/ReoGeo/data/MNMapPLUTO.geojson'
    });

map.addLayer({
       id: 'pluto-fills',
       type: 'fill',
       source: 'plutodata',
       layout: {},
       paint: {
         'fill-color': '#627BC1',
         'fill-opacity': 0.5
       }
    });

我没有检测到 geojson 编码有任何问题,并且我在 MapBox 文档中找不到任何大小限制。

有人知道是什么原因造成的吗?

【问题讨论】:

    标签: mapbox geojson mapbox-gl mapbox-gl-js


    【解决方案1】:

    这是一个数据问题:如果您查看较小文件的来源pluto.geojson,您会看到:

    [-74.002537,40.733446],[-74.002543,40.733446],[-74.002547,40.733446],
    

    这些是 GeoJSON 标准所要求的经度、纬度坐标。如果你看MNMapPLUTO.geojson

    [[[997277.2344000041,221816.0936000049],[997300.0160000026,221803.44499999285],[997288.5119999945,221782.6930000037],[997286.4176000059,221778.9143999964],[997197.0333999991,221828.3980000019]
    

    这些坐标远远超出经度、纬度范围。您需要将此数据投影到 WGS84 基准(经度、纬度单位)中,才能使其成为有效的 GeoJSON 并显示在地图上。

    【讨论】:

    • 就是这样。将其放入QGIS,将坐标参考系更改为WGS84,它立即工作。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    • 1970-01-01
    • 1970-01-01
    • 2019-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多