NetworkX 系列教程 (7)- 对 graph 进行分析
graph 构建完成后,对 graph 的连通等属性进行分析.
注意:如果代码出现找不库,请返回第一个教程,把库文件导入.
对图进行分析
强连通:有向图中任意两点 v1、v2 间存在 v1 到 v2 的路径(path)及 v2 到 v1 的路径。
弱联通:将有向图的所有的有向边替换为无向边,所得到的图称为原图的基图。如果一个有向图的基图是连通图,则有向图是弱连通图。
连通子图
1 | #定义图的节点和边 |
输出:
connected_components of graph: [{'a', 'b', 'c'}, {'4', '0', '5', '1', '2'}, {'3'}]
弱联通
1 | #定义graph |
输出:
{0, 1, 2, 3, 7, 8} {9, 5, 6} [6, 3]
强连通
1 | G.clear() |
输出:
<generator object strongly_connected_components at 0x7fe0eefe9c50> <class 'generator'> [{8, 1, 2, 3}, {0}]
子图
1 | G.clear() |
条件过滤
1 | #G.clear() |