尝试了解空间连接 sjoin_nearest() GeoPandas Python 中的 max_distance 参数

问题描述 投票:0回答:1

我有两个具有点和线串几何形状的 geopandas 数据框。

我想使用空间连接根据这些数据帧之间的距离来组合它们。

以下是我想用于连接的两个几何列:

[点几何] (https://i.stack.imgur.com/hPkQw.png)

[线串] (https://i.stack.imgur.com/uIWs6.png)

我在 geopandas 中使用 sjoin_nearest() 函数根据它们的距离进行连接。 以下是我用于加入的代码行:

joined_df = point_gdf.sjoin_nearest(gdf,how='左',distance_col='距离',max_distance=0.06219)

有人告诉我 max_distance 的单位是英里,所以我尝试将 100 米转换为英里,然后提供该值。

我得到以下输出:

[加入数据框] (https://i.stack.imgur.com/pAi6K.png)

现在我对 sjoin_nearest() 中的 max_distance 参数感到困惑。

  • 它的单位是什么?米还是英里?
  • 我想要获取100米距离内的几何图形。我怎样才能做到这一点 ?我提供了 max_distance = 100 但仍然获得相同的行数。
  • 这个 max_distance 是否取决于距离参数。距离列采用浮点小数,您可以看到 0.002 0.0017 等。
python join spatial geopandas shapely
1个回答
0
投票

距离以您所使用的坐标系的单位表示。

从坐标来看,它看起来像EPSG:4326,其中有

单位:学位(供应商定义代表)

您不应该以度为单位测量距离。

将数据重新投影到投影坐标系中,单位为米等。就像 UTM 区域之一。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.