geometric_edges#
- geometric_edges(G, radius, p=2, *, pos_name='pos')[source]#
返回节点对列表,这些节点对之间的距离在
radius范围内。- Parameters:
- Gnetworkx 图
用于生成边列表的图。
G中的节点应具有一个名为pos的属性,对应于节点的位置,用于计算与其他节点的距离。- radius标量
距离阈值。如果两个节点之间的距离小于
radius,则该边包含在边列表中。- pos_name字符串, 默认=”pos”
表示每个节点在二维坐标中位置的节点属性名称。图中的每个节点都必须具有此属性。
- p标量, 默认=2
用于计算距离的 Minkowski 距离度量。默认值为 2,即欧几里得距离。
- Returns:
- edges列表
距离小于
radius的边列表
Notes
半径使用 Minkowski 距离度量
p。 如果 scipy 可用,则使用scipy.spatial.cKDTree加速计算。Examples
创建一个具有 “pos” 属性的图,该属性表示节点的二维坐标。
>>> G = nx.Graph() >>> G.add_nodes_from( ... [ ... (0, {"pos": (0, 0)}), ... (1, {"pos": (3, 0)}), ... (2, {"pos": (8, 0)}), ... ] ... ) >>> nx.geometric_edges(G, radius=1) [] >>> nx.geometric_edges(G, radius=4) [(0, 1)] >>> nx.geometric_edges(G, radius=6) [(0, 1), (1, 2)] >>> nx.geometric_edges(G, radius=9) [(0, 1), (0, 2), (1, 2)]