图论算法(二):networkx 新建Graph(节点+连边)

1. 新建Graph
根据定义,图是节点(顶点)的集合,连同已识别的节点对(称为边,连接等)。 在NetworkX中,节点可以是任何可排列的对象,例如 一个文本字符串,一个XML对象,另一个Graph,一个自定义节点对象等等。

创建一个没有节点和边的空图如下,

import networkx as nx

G = nx.Graph()

2. 添加Node
在空图中逐个添加新的节点,

import networkx as nx

G = nx.Graph() # new graph

G.add_node('a') # add a new node
G.add_node('b') # add a new node
print G.nodes() # print nodes

在空图中添加多个新的节点(比如10个新节点),

import networkx as nx

G = nx.Graph() # new graph

H=nx.path_graph(10) # add 10 new nodes
G.add_nodes_from(H)
print G.nodes() # print nodes

3. 新建Edges
在空图中逐个添加新的连边,

import networkx as nx

G = nx.Graph() # new graph

H=nx.path_graph(10) # add 10 new nodes
G.add_nodes_from(H)
print G.nodes() # print nodes

G.add_edge(1,2) # add a new edge
print G.edges() # print edges

在空图中添加多条新的连边(比如2条新连边),

import networkx as nx

G = nx.Graph() # new graph

H=nx.path_graph(10) # add 10 new nodes
G.add_nodes_from(H)
print G.nodes() # print nodes

G.add_edges_from([(1,2),(1,3)]) # add new adges
print G.edges() # print edges

参考
https://networkx.github.io/documentation/networkx-1.10/tutorial/tutorial.html

你可能感兴趣的:(计算机网络)