使用 GeoPandas/Fiona 从 shapefile 读取 M 值

Posted

技术标签:

【中文标题】使用 GeoPandas/Fiona 从 shapefile 读取 M 值【英文标题】:Reading M-Values from shapefiles using GeoPandas/Fiona 【发布时间】:2021-12-16 10:11:48 【问题描述】:

我正在处理一组在 shapefile 中表示为“折线 ZM”的线要素(道路)。但是,当使用 geopandas/fiona 读取 shapefile 时,返回的几何图形总是 LineString Z。我在网上看到 GDAL 支持从 shapefile 读取 M 值。

我想知道是否有一种方法可以从 python 中的 shapefile 加载 M 值。因为到目前为止,我的谷歌搜索没有任何运气,也许我只是没有找到正确的地方。

(P.S. 如果可能,我不喜欢使用 arcpy) 提前致谢!

【问题讨论】:

您可能想查看 gis.stackexchange.com。此外,在提问时,将您尝试过的代码和得到的结果都包含在内是有帮助的。 【参考方案1】:

Geopandas 无法正确读取具有 M 值的几何图形。这似乎是 GeoPandas 使用的库的上游问题。有关更多信息,请参阅这些 github 问题线程:

GeoPandas/Reading in M values using geopandas Shapely/POINT M parsed as POINT Z Fiona/M Values in Shapefile aren't shown

遗憾的是,它似乎不会很快得到修复。

如果需要,您还可以使用 Python GDAL/OGR 库。它明显比使用 GeoPandas 更麻烦,但它确实支持具有 M 值的几何图形。有关如何使用它们的更明确示例,请参阅以下链接:

Python GDAL/OGR Cookbook Accessing M-values associated to LINESTRING M and MULTILINESTRING M geometries Creating Python OSGEO/OGR geometry with M-values (not using WKT)

【讨论】:

以上是关于使用 GeoPandas/Fiona 从 shapefile 读取 M 值的主要内容,如果未能解决你的问题,请参考以下文章

Py之shap:shap.explainers.shap_values函数的简介解读(shap_values[1]索引为1的原因)使用方法之详细攻略

将 `shap.summary_plot()` 的渐变颜色更改为特定的 2 或 3 RGB 渐变调色板颜色

在 LightGBM 中使用“predict_contrib”获取 SHAP 值

使用 SHAP 的 Tkinter 回调异常

如何将 SHAP 与 sklearn 中的线性 SVC 模型一起使用 Pipeline?

如何告诉 shap 树解释器和 shap 值计算器哪些变量是分类的?