图可视化——python

networkx–nx.draw()参数

  • nx.draw():至少接受一个参数,即待绘制的网络G。
  • 边的样式:①solid实线;②dashed虚线;③dotted虚线,更密集;④dashdot虚线,是②③的结合。
- `node_size`:  指定节点的尺寸大小(默认是300)
  - `node_color`:  指定节点的颜色 (默认是红色,可以用字符串简单标识颜色,例如'r'为红色,'b'为绿色等)
  - `node_shape`:  节点的形状(默认是圆形,用字符串'o'标识)
  - `alpha`: 透明度 (默认是1.0,不透明,0为完全透明)
  - `width`: 边的宽度 (默认为1.0)
  - `edge_color`: 边的颜色(默认为黑色)
  - `style`: 边的样式(默认为实现,可选: solid|dashed|dotted,dashdot)
  - `with_labels`: 节点是否带标签(默认为True)
  - `font_size`: 节点标签字体大小 (默认为12)
  - `font_color`: 节点标签字体颜色(默认为黑色)

节点

print('图中所有的节点', G.nodes())
print('图中节点的个数', G.number_of_nodes())

输出:
图中所有的节点 ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, <networkx.classes.graph.Graph object at 0x0000023CD7E08708>]
图中节点的个数 20

networkx常用函数

用途 功能 函数
读取文件/生成图 创建无向图 G = nx.Graph()
读取文件/生成图 创建有向图 G = nx.DiGraph()
读取文件/生成图 读取gml文件 G=nx.read_gml(‘karate.gml’,label=‘id’)
读取文件/生成图 读取txt文件 G = nx.read_edgelist(“Email-Enron.txt”)
读取文件/生成图 读取有权值的txt文件 nx.read_weighted_edgelist(data)
读取文件/生成图 读取有权值的txt文件,并生成有向图 nx.read_weighted_edgelist(data, create_using=nx.DiGraph())
读取文件/生成图 随机生成30个点,连接概率为0.05 G =nx.erdos_renyi_graph(30, 0.05)
添加结点/边 从列表中添加节点[a,b,c] G.add_nodes_from(node)
添加结点/边 从列表中添加边[[a,b],[a,c]] G.add_edges_from(edge)
判断 判断两节点之间是否有边 Graph.has_edge(u, v)
记数 网络中节点个数 G.number_of_nodes()
记数 网络中边的个数 G.number_of_edges()
画图 画网络图 nx.draw_networkx(G)(显示标签)
获取节点信息 获取结点i的邻居节点 G.neighbors(i) 或 G[i](在有向图中输出的是出度的邻居,G[i]会输出权重)
获取节点信息 输出k-shell为5的节点 nx.k_core(G,5).nodes
获取节点信息 获取所有节点的度 G.degree()
获取节点信息 获取某个节点的出度 G.out_degree(i)
获取节点信息 获取节点i的属性 G.nodes[i][“wight”]
获取节点信息 设置节点i的属性 G.nodes[i][“wight”]=0.1
获取节点信息 为多个节点设置属性 nx.set_node_attributes(G, ‘wight’, {i:0.2, j:0.1})
获取节点信息 查看图中所有点的信息 G.nodes.data()
获取边信息 查看边的信息 G.edges[‘node1’, 'node2‘]
获取边信息 查看所有边的信息 G.edges.data()
输出文件 将图输出为gephi文件 nx.write_gexf(G,‘your_file_name.gexf’)
输出文件 将图输出为txt文件 nx.write_edgelist(G,“file_name.txt”,data = False)
计算节点中心性 度中心性 nx.degree_centrality(G)
计算节点中心性 特征向量中心性 nx.eigenvector_centrality(G)
计算节点中心性 特征向量中心性(大网络) nx.eigenvector_centrality_numpy(G)
计算节点中心性 介数中心性 nx.betweenness_centrality(G)
计算节点中心性 接近中心性 nx.closeness_centrality(G)
计算节点中心性 pagerank nx.pagerank(G)
计算节点中心性 HITS nx.hits(G)
最短路径/最短路径长度 两点间最短路径 nx.shortest_path(G,source=1,target=155)
最短路径/最短路径长度 两点间的最短路径长度 nx.shortest_path_length(G,source=1,target=155)
最短路径/最短路径长度 dijkstra路径 nx.dijkstra_path(G,1,155)
最短路径/最短路径长度 dijkstra路径长度 nx.dijkstra_path_length(G,1,155)
最短路径/最短路径长度 当前节点与可达节点的最短路径 nx.single_source_shortest_path(G, 0)
最短路径/最短路径长度 图中两两节点计算最短路径长度的 dict(nx.all_pairs_shortest_path(G))
最短路径/最短路径长度 计算整个图的平均最短路径长度 nx.average_shortest_path_length(G)

你可能感兴趣的:(python)