哪些Python模块提供适合空间数据的基础类?

1 投票
4 回答
1346 浏览
提问于 2025-04-16 09:16

我正在准备用Python开发一个处理大量空间数据的应用程序。我在寻找一个Python模块,这个模块里有一套很不错的空间类,我可以从中继承。以下是我希望这个模块能包含的两个功能:

  • 支持矢量数据和栅格数据,并且能够在这两种格式之间进行转换。
  • 支持在不同坐标系之间进行坐标投影。

到目前为止,我找到的最好的模块是shapely,但它主要关注矢量数据,并不支持坐标系转换。我想要的库的一个例子是sp包,它为存储矢量点数据和稠密或稀疏的栅格数据提供了类,并且支持坐标系转换。

有没有我可能忽略的Python模块,能够提供一套很好的空间类呢?

4 个回答

0

几乎所有的Python模块都可以在CheeseShop这个网站上找到,所以可以从这里开始找。不过,我没有找到什么明显的东西。

3

你试过地理空间数据抽象库吗?

我在Linux上找到了它,叫做python-gdal

关于Debian的GDAL简介:

GDAL支持40多种流行的数据格式,包括一些常用的格式(比如GeoTIFF、JPEG、PNG等),还有一些在地理信息系统(GIS)和遥感软件中使用的格式(比如ERDAS Imagine、ESRI Arc/Info、ENVI、PCI Geomatics)。它还支持许多遥感和科学数据分发格式,比如HDF、EOS FAST、NOAA L1B、NetCDF、FITS。

OGR库支持一些流行的矢量格式,比如ESRI Shapefile、TIGER数据、S57、MapInfo文件、DGN、GML等。

查看 trac.osgeo.org 上的内容

2

更准确地说,Shapely 是一个专注于平面计算几何的工具,别的功能没有。它根本不是一个处理向量数据的库。我是和 Pyproj 一起使用它的(http://code.google.com/p/pyproj/)。我还没见过 Python 有什么基础类专门用于地理空间数据。当然,在 Java 项目中像 GeoTools 这样的库有很多。Python 的数组可以作为一个不错的起点:坐标数组可以被 Shapely 使用,而类似栅格的数组可以被 GDAL 使用。你也可以看看 Shapely、ArcPy 和 SimpleGeo 提供的类似 GeoJSON 的接口。

撰写回答