首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NetworkX:绘图图

NetworkX:绘图图
EN

Stack Overflow用户
提问于 2015-03-20 00:00:57
回答 1查看 2.4K关注 0票数 1

我试图用Python中的NetworkX绘制一个图形。我使用以下代码:

代码语言:javascript
复制
G=nx.to_networkx_graph(adj)
pos=nx.spring_layout(G)

#G=nx.path_graph(8)
nx.draw(G,pos,labels)
plt.savefig("simple_path.png") # save as png
plt.show() # display

我得到了这个输出:

但是,我想获得以下带有标签的输出:

我能对密码做些什么?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-20 04:23:40

因此,对于定位,您已经设置了基于posspring_layoutpos给出节点的位置。检查它-一旦您定义了它,要求python为您打印pos,看看它在做什么。

下面是另一种代码:

代码语言:javascript
复制
import networkx as nx
import pylab as py
blue_edges = [('B', 'C'), ('B', 'D'), ('B', 'E'), ('E', 'F')]
red_edges = [('A', 'B'), ('A', 'C'), ('C', 'E'), ('D', 'E'), ('D', 'F')]

G=nx.Graph() #define G
G.add_edges_from(blue_edges)
G.add_edges_from(red_edges)

pos = {'A':(0,0), 'B':(1,1), 'C':(1,-1), 'D':(2,1), 'E':(2,-1), 'F':(3,0)}

nx.draw_networkx(G, pos=pos, edgelist = [], node_color = 'k')
nx.draw_networkx(G, pos=pos, nodelist = [], edgelist = blue_edges, edge_color = 'b')
nx.draw_networkx(G, pos=pos, nodelist = [], edgelist = red_edges, edge_color = 'r')

如果不显示x和y轴,请将最后一点更改为:

代码语言:javascript
复制
nx.draw(G, pos=pos, edgelist = [], node_color = 'k')
nx.draw(G, pos=pos, nodelist = [], edgelist = blue_edges, edge_color = 'b')
nx.draw(G, pos=pos, nodelist = [], edgelist = red_edges, edge_color = 'r')

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29157149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档