网络x中是否存在有效的函数/方法(因为图形很大),以便从源节点中识别出所有2的节点。非常感谢!如何使用networkx从源节点中找到距离为2的节点?
2
A
回答
1
假设你的图是G
和源节点为source
,那么你可以使用single_source_dijkstra_path_length获得路径长度如下:
>>> source_path_lengths = networkx.single_source_dijkstra_path_length(G, source)
>>> for (v, l) in source_path_lengths.iteritems():
if l == 2:
print v
1
好了,你可以指定“截止”参数设置为“2”从Single Source Shortest Path - Networkx的文档可以看出。所以基本上算法找到路径,直到路径长度为< =截止。
import networkx as nx
G = nx.path_graph(5)
path = nx.single_source_shortest_path_length(G ,source=src_vertex,cutoff=2)
然后,您可以使用以下方法来顶点列表在< = 2的距离源
print path.keys()
#output : [0, 1, 2, 3, 4]
或者你可以打印字典本身得到完全的源之间的距离,高达长度< =截止
print vertex_list
#Output : {0: 0, 1: 1, 2: 2}
顶点可以相应地改变的“临界”值根据自己的需要。
+0
非常感谢你! – SunWJ
相关问题
- 1. 在加权图中找到从节点到所有其他节点的距离
- 2. 节点频率使用networkx
- 3. Java二叉树:找到达到两个节点的距离最短的节点
- 4. Networkx节点遍历
- 5. Networkx节点大小
- 6. 使用NetworkX计算2个节点之间的点击时间
- 7. 如何在networkx中找到没有外出边缘的节点?
- 8. 如何从给定的一组节点等距离地查找图中的所有节点?
- 9. 如何找到两个分离最广的节点之间的距离
- 10. 计算图中每个节点的距离为n的未访问节点
- 11. 找到一个节点和树的根之间的距离
- 12. 查询查找距离特定节点两步的所有节点
- 13. 根据节点对距离在图表上绘制节点
- 14. 在图中,如何找到一组节点的最近节点?
- 15. 如何在二叉树中找到节点的父节点?
- 16. EXTJS找到节点的父节点
- 17. 计算图中2个节点之间的距离
- 18. NetworkX洗牌节点顺序
- 19. NetworkX节点属性图
- 20. NetworkX递归子节点
- 21. 如何在neo4j中找到使用Neography的节点的相关节点?
- 22. 从源到目标节点的所有可能路径的成本/距离
- 23. 如何在节点树中找到节点数据?
- 24. 如何使用节点和离子
- 25. 找到距离地点最小总距离的点的算法
- 26. 从根到二叉树节点的距离
- 27. 使用nltk找到祖父节点的节点
- 28. 在Python中访问networkx图的节点
- 29. 分离节点
- 30. 红黑树 - 如何找到节点的父节点?
谢谢您的回复。这种方法很好,但不适合计算整个图的节点。这种方法需要计算其他距离,如3和4,这是不使用和浪费时间。有没有浪费这些时间的有效方法。提前致谢。 – SunWJ
@SunWJ您总是可以使用关键字参数'cutoff'将搜索降低到小于或等于2的路径。此外,根据您的图形是否加权,您可以使用'single_source_shortest_path_length'(非加权)。 – rodgdor
非常感谢你 – SunWJ