import networkx
生成样例图:
graph = networkx.Graph()
graph.add_nodes_from(["1", "2", "3", "4", "5", "6", "7"])
graph.add_edge("1", "2")
graph.add_edge("1", "3")
graph.add_edge("2", "3")
graph.add_edge("1", "4")
graph.add_edge("4", "5")
graph.add_edge("4", "6")
graph.add_edge("3", "7")
绘制样例图:
networkx.draw_networkx(graph)
plt.show()
plt.close()

Network 计算中心度:
>>> networkx.degree_centrality(graph)
{'1': 0.5, '2': 0.3333333333333333, '3': 0.5, '4': 0.5, '5': 0.16666666666666666, '6': 0.16666666666666666, '7': 0.16666666666666666}
删除 "1" 节点:
>>> graph.remove_node("1")
拆分子图并分别计算中心度:
>>> for component in networkx.connected_components(graph):
... print(networkx.degree_centrality(graph.subgraph(component)))
{'2': 0.5, '3': 1.0, '7': 0.5}
{'4': 1.0, '5': 0.5, '6': 0.5}