NetworkX:工程图 [英] NetworkX: Drawing Graph
本文介绍了NetworkX:工程图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在Python中使用NetworkX绘制图形.我正在使用以下代码:
I am trying to draw a graph using NetworkX in Python. I am using the following code:
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
我得到以下输出:
但是我想获得带有Labels的以下输出:
But I want to get the following output with Labels:
该如何处理代码?谢谢.
What can I do on the code? thank you.
推荐答案
因此,为了进行定位,您已经基于spring_layout
设置了pos
. pos
给出节点的位置.签出-定义好后,请python为您打印pos
并查看其作用.
So for the positioning, you've set pos
based on spring_layout
. pos
gives the positions of your nodes. Check it out - once you've defined it, ask python to print pos
for you and see what it's doing.
这是替代代码:
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轴,请将最后一位更改为:
and if you want it without the x and y axes showing, change the last bit to:
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')
这篇关于NetworkX:工程图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文