2016-11-05 90 views
0

我已经有MapBox GL JS设置,但它不会加载一个大的(〜75MB)GeoJSON文件。控制台不会抛出任何错误,但在地图上没有任何显示。该文件不起作用位于here大GeoJSON不工作w/MapBox GL

该脚本对小文件没有问题,如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文档中的任何大小限制。

有谁知道可能是什么原因造成的?

回答

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并显示在地图上。

+0

就是这样。将其安装到QGIS中,将坐标参考系统更改为WGS84,并立即开始工作。谢谢! – Andrew