如何将geoJSON数据导入MapBox


13

在尝试将可编辑数据导入mapbox时,我无法以系统接受的格式导入数据。

它拒绝该数据并显示一条错误消息,指出:

city.geojson:输入失败。第1行不建议使用老式的crs成员。

在阅读时,我认为文件转换一定有问题,因此我将其与提供给MapBox 的示例文件进行了比较,而没有发现任何差异。

接下来是最令人困惑的部分:尝试导入示例文件时,我从系统中收到非常相似的错误消息:

stations.geojson:输入失败。不建议使用老式的crs成员,>此对象等效于默认对象,应在第1行上将其删除。

现在我的问题是:如何将geoJSON文件导入MapBox?


1
您可能可以使用文本编辑器打开GeoJSON文件,然后删除crs元素。您可以写信给MapBox并告诉他们使用crs可能过于严格。geojson.org包含指向当前和2008版本的GeoJSON规范的链接。
user30184 '16

Answers:


19

请注意,我不是MapBox软件用户,但是在您在Visual Studio中指出的MapBox示例GeoJSON文件中,“ crs”警告似乎与GeoJSON的“ 坐标参考系统”元素有关,位于文件。

MapBox可能是更改了导入格式规范,但是却忘记了更新示例文件。我建议使用托管示例文件的页面上的“询问我们的支持团队”链接将其报告给他们。

"crs": {
    "type": "name",
    "properties": {
      "name": "urn:ogc:def:crs:OGC:1.3:CRS84"
    }
  },

关于问题:我建议尝试使用文本编辑器删除CRS参考,然后再次尝试导入。如前所述,我对MapBox软件不熟悉,但是我想您将能够在软件本身导入后定义CRS。

编辑文件时要小心,确保仅对CRS对象正确删除逗号和括号!MapBox示例GeoJSON的顶部应该看起来像这样:

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "name": "Van Dorn Street",
        "marker-color": "#0000ff",
        "marker-symbol": "rail-metro",
        "line": "blue"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          -77.12911152370515,
          38.79930767201779
        ]
      }
    },

因此最顶部应该保留“ type”:“ FeatureCollection”,因为它是CRS定义之前的单独对象。


1
很好,行得通!删除有关CSR的信息会将数据带入系统。
Merlin

1
我不敢相信这样的公司无法“忽略” json文件中的一行!
jdcaballerov

2
仅添加@Marco_B的解决方案仍然有效,而MapBox仍未解决此问题。
Valerie Anderson

这对我有用。同意MapBox无法解决此问题很愚蠢。
Meekohi

0

是-如上所述,您只需要编辑文本文件即可。

我删除了:

"crs": {"type": "name","properties": {"name": "urn:ogc:def:crs:OGC:1.3:CRS84"}},

从我的GeoJSON文件的第一行开始,它可以很好地导入。


这个答案如何与@Macro_B的答案重复?
tinlyx
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.