network
import networkx as nx
g=nx.Graph()#创建空的无向图
g=nx.DiGraph()#创建空的有向图
1.增加节点 g.add_node(1) g.add_nodes_from([2,3,4])
2.添加属性 g.add_node(1,name="n1",weight=1)
3.查看属性 g._node # 返回字典 {1: {'name': 'n1', 'weight': 1}, 2: {'name': 'n2', 'weight': 1.3}}
4.跟新顶点 g._node[2].update({"name":"qiao"})
5.删除顶点 g.remove_node(1)
6.删除节点的属性 del g.nodes[2]["weight"]
7.检查节点是否存在 g.has_node(2)
8.在图中增加边 g.add_edge(2,3) g.add_edges_from([(1,2),(1,3)])
9. 为多条边增加属性 g.add_edges_from([(1,2,{"color":"blue"}),(2,3,{"weight":8})])
10. 内置函数增加权重 g.add_weighted_edges_from([(1,2,0.125),(1,3,0.75),(2,4,1.2),(3,4,0.375)])
11.跟新边的属性 g[1][2]["weight"]=0.1 g[1][2].update({"weight":4.7})
12.删除边 g.remove_edges_from([(2,4),(2,3)])
13.删除边的属性del g[1][2]["color"]
14.检查边的属性是否存在 g.has_edge(1,2)
15.查看顶点的相邻顶点 g[1] ,g.adj[1] ,list(g.neighbors(1))
16.查看图的相邻
for n,nbrs in g.adjacency():
print(n)
print(nbrs)
17.图的遍历
for n,nbrs in g.adjacency():
print(n,nbrs)
for nbr,attr in nbrs.items():
print(nbr,attr)
18.绘制Graph
import matplotlib.pyplot as plt
g=nx.Graph()
g.add_nodes_from([1,2,3])
g.add_edges_from([(1,2),(1,3)])
nx.draw_networkx(g)
plt.show()
18.计算每个顶点的PageRank值
g1=nx.DiGraph()
g1.add_weighted_edges_from([("A","B",0.5),("A","C",0.5)])
pr=nx.pagerank(g1)
for node,pagerankvalue in pr.items():
print(node,pagerankvalue)
posted on 2019-07-13 16:22 happygril3 阅读(215) 评论(0) 收藏 举报
浙公网安备 33010602011771号