1

我已经从英国军械测量局下载了 shapefile 边界数据,并使用 QGIS 将其转换为 geojson 格式。转换过程中没有报告错误,并且鉴于数据来自政府组织,我认为提供的数据是正确的、连贯的和完整的(这对我如何缩小范围有影响)是一个合理的假设错误来源)。

我使用 mapbox 来显示这些数据,并通过 web 服务检索它。当我用 mapbox 加载数据时,它会导致 mapbox “蓝屏”,即完全崩溃浏览器选项卡并断开开发控制台(Chrome、FF 和 IE)的连接。有太多的多边形/特征让我“手动”调查,我无法包含错误 - 甚至 try/catch 也无济于事。我已经开始系统地将数据集减半,结果发现错误包含在以 am 开头的边界区域的某处。我知道我可以继续使用这种方法并在某些时候找到错误,但我想知道您是否有一些提示给我

  1. 检查 WKT/geojson/多边形完整性。技术对我来说并不重要(C#、Java、JS 等等……),只要它是一个简洁的过程。(显然,Postgres/Postgis 有这个,但我所有的数据都驻留在一个对象数据库中,如果有任何其他方法可以检查,我更喜欢 :-))
  2. 专门针对 mapbox 的使用检查地理数据的完整性。

我的假设是“正确”(即无错误且格式正确)的地理数据将在 mapbox 中正确呈现,但正如我的问题所表明的那样:介于政府网站的官方数据集之间,使用井进行无错误转换-建立工具并使用最新版本在mapbox中进行渲染,但仍然出错。

感谢您提供解决此问题的提示!

编辑:令人惊讶的是,Firefox 似乎比 Chrome 处理得更好。使用相同的数据不会崩溃。

4

1 回答 1

1

首先我担心你的问题没有正确或错误的答案,我不知道你想如何接受答案。这通常是一个不好的问题。

其次,即使它来自政府,我也不会采用“必须有效”的数据集。将数据导出为某种格式总是会有一些边缘情况,或者它们可能不会像您希望的那样严格遵循 geojson 规范。

但是,您可以尝试这样做:

  1. 通常数据太精确而无法使用(过度拟合),您应该尝试使用您选择的工具来简化您的 geojson 数据以减小其大小。您可以使用以下方法之一来完成该任务(还有更多 ofc。)

  2. 看看能不能把简化版加载到浏览器中

  3. 如果您的文件不是太大,您可以尝试使用http://geojsonlint.com/http://geojson.io/等外部工具验证 geojson 。

  4. 尝试其他浏览器,看看它是否可以更好地处理数据。奇怪的是您的浏览器崩溃了。如果 chrome 内存不足,它通常会通知您该问题。

除此之外,我认为找出问题仍然是一项手动任务。

于 2018-04-06T06:45:30.837 回答