2

我正在处理一个项目,其中包含来自 ArcGIS 的 .gdb 文件中的 GIS 数据。我想为此使用 fiona/geopandas 并将数据与一些机器学习库一起使用。某些层包含不受支持的类型,此处提到https://github.com/Toblerity/Fiona/blob/master/fiona/_geometry.pyx

更具体地说,在打开图层然后对其进行索引后,我得到了 UnsupportedGeometryTypeError: 11 。一些索引具有有效类型,而另一些则没有。

例子:

with fiona.open('path.gdb', layer='layername') as layer:
  print(layer[4]) # works
  print(layer[5]) # don't work, UnsupportedGeometryTypeError: 11

目前,我正在使用 mac,但如果它解决了问题,可以切换到 Linux 发行版。我更喜欢使用免费库并避免使用 arcpy,因为我需要许可证,例如 ArcGIS Server。

任何想法如何使用这些格式?也许额外的驱动程序或另一个库?谢谢。

4

1 回答 1

1

你可以试试GDAL/OGR python 库。它很有可能支持 fgdb 中的所有几何类型。

如果不是这种情况,您最好的选择是将作为专有格式 (Esri) 的 FileGeodatabase (fgdb) 转换为像PostGreSQL / PostGIS这样的开放格式。

您可以使用命令行工具ogr2ogr来执行转换。

于 2019-02-08T14:21:34.753 回答