Python 3:将带有 CRS 坐标的 Geopandas 数据框转换为图形以查找连通分量和其他图形属性?
Python 3: Geopandas dataframe with CRS coordinates into Graph to find connected components and other graph properties?
我有一个 geopandas 数据框,我发现可以在其中使用一些图论包来查找图形属性,例如连通分量。
如何使用 Geopandas 数据框方便地找到图论属性?
您可以使用pysal
生成空间权重矩阵(内部图形)- http://pysal.org/notebooks/lib/libpysal/weights.html。所有权重 类 都有 from_dataframe
选项。
空间权重可以进一步导出到 networkx
图形对象以供进一步 graph-based 分析。
import libpysal
import geopandas
df = geopandas.read_file(geopandas.datasets.get_path('naturalearth_lowres'))
W = libpysal.weights.Queen.from_dataframe(df) # generate spatial weights
G = W.to_networkx() # get networkx.Graph
请注意,对于某些事物(如组件),您可以直接使用权重 - 请参阅文档中的属性 https://pysal.org/libpysal/generated/libpysal.weights.W.html#libpysal.weights.W。
我有一个 geopandas 数据框,我发现可以在其中使用一些图论包来查找图形属性,例如连通分量。
如何使用 Geopandas 数据框方便地找到图论属性?
您可以使用pysal
生成空间权重矩阵(内部图形)- http://pysal.org/notebooks/lib/libpysal/weights.html。所有权重 类 都有 from_dataframe
选项。
空间权重可以进一步导出到 networkx
图形对象以供进一步 graph-based 分析。
import libpysal
import geopandas
df = geopandas.read_file(geopandas.datasets.get_path('naturalearth_lowres'))
W = libpysal.weights.Queen.from_dataframe(df) # generate spatial weights
G = W.to_networkx() # get networkx.Graph
请注意,对于某些事物(如组件),您可以直接使用权重 - 请参阅文档中的属性 https://pysal.org/libpysal/generated/libpysal.weights.W.html#libpysal.weights.W。