python学习(32)---networkx
2021-02-19 12:17
标签:col multi plt case 使用 导入 结构 show attribute NetworkX提供图形(或网络)的数据结构以及图形算法,生成器和绘图工具。 函数,方法和变量名是lower_case_underscore(小写,下划线表示单词之间的空格)。 所有图类均允许任何可哈希对象作为节点。可哈希对象包括字符串,元组,整数等。如权重和标签之类的任意边属性都可以与边相关联。 #若想让图形更精美 pos 指的是布局 主要有spring_layout , random_layout,circle_layout,shell_layout。node_color指节点颜色,有rbykw ,同理edge_color. python学习(32)---networkx 标签:col multi plt case 使用 导入 结构 show attribute 原文地址:https://www.cnblogs.com/Lee-yl/p/12684966.html一、networkx介绍
二、基础
1、导入模块
import networkx as nx
2、图/网络
图的类型
G = nx.Graph()#创建空的网络图
G = nx.DiGraph()
G = nx.MultiGraph()
G = nx.MultiDiGraph()
图的创建:(三种方式)
3、节点和边
#添加点
G.add_node(‘a‘)#添加点a
G.add_node(1,1)#用坐标来添加点
G.add_node(math.cos) # any hashable can be a node
#添加边
G.add_edge(‘x‘,‘y‘)#添加边,起点为x,终点为y,默认边值为1
G.add_edge(1,3,weight=0.9) #添加边,起点为1,终点为2,权重值为0.9G.add_edge(‘y‘,‘x‘,function=math.cos) #Edge attributes can be anything
G.add_weight_edges_from([(‘x‘,‘y‘,1.0)])#第三个输入量为权值
#也可以
list = [[(‘a‘,‘b‘,5.0),(‘b‘,‘c‘,3.0),(‘a‘,‘c‘,1.0)]
G.add_weight_edges_from([(list)])
4、图形的显示
需要导入matplotlib
import matplotlib.pyplot as plt
nx.draw(G)
#nx.draw_networkx(G)
plt.show()
nx.draw(G,pos = nx.random_layout(G),node_color = ‘b‘,edge_color = ‘r‘,with_labels = True,font_size =18,node_size =20)
with_labels指节点是否显示名字,size表示大小,font_color表示字的颜色。
上一篇:栈的应用(括号匹配算法实战)
下一篇:冒泡排序
文章标题:python学习(32)---networkx
文章链接:http://soscw.com/index.php/essay/57514.html