Python 使用matplotlib.pyplot时如何显示节点标签?

Python 使用matplotlib.pyplot时如何显示节点标签?,python,matplotlib,graph,networkx,Python,Matplotlib,Graph,Networkx,我正在使用Python进行社交网络分析,这是一种非常简单的分析,并且是一个新手(对SNA和Python都是如此) 在mac上使用终端绘制图形时,我尝试了各种方法,但仍然只能绘制节点和边,而不能在其中或旁边标记节点 我应该使用什么脚本使标签可见 >>> import networkx as nx >>> import networkx.generators.small as gs >>> import matplotlib.pyplot as

我正在使用Python进行社交网络分析,这是一种非常简单的分析,并且是一个新手(对SNA和Python都是如此)

在mac上使用终端绘制图形时,我尝试了各种方法,但仍然只能绘制节点和边,而不能在其中或旁边标记节点

我应该使用什么脚本使标签可见

>>> import networkx as nx
>>> import networkx.generators.small as gs
>>> import matplotlib.pyplot as plt
>>> g = gs.krackhardt_kite_graph()
>>> nx.draw(g)
>>> plt.show()
尝试使用:

这导致:


默认情况下,带_标签的
True
,因此无需指定EdChum给出了一个很好的答案。默认情况下,另一个不显示轴并生成占用图形稍多部分的图形的选项是使用
nx.draw
,但将参数
设为带_labels=True
。(对于
nx.draw
,需要将带有标签的
设置为
True
,但对于
nx.draw\u networkx
则默认为
True


请注意,存在这样一个bug,有时plt.show()将不显示标签。据我所知,它不在networkx中,而是和渲染有关。它保存的很好,所以我不担心后续的细节。它为我在macbook上使用ipython显示。不知道它在其他什么系统上。更多详情请访问

如果我的答案解决了您的问题,您可以接受我的答案,我的答案左上角将有一个空勾号,谢谢您可能想看看alsoThat的酷,Joel!!当我使用您提供的这一行(plt.savefig('tmp.png')将图像保存到文件中时,标签就会出现。我也在使用mac,不知道为什么“plt.show()”不能说出标签。我试图“接受”或“喜欢”你的答案,但似乎我做不到,因为我没有足够的声誉。我应该如何接受您的答案?为什么
plt.show()
不起作用的问题与matplotlib中的一个(已知)错误有关。我不确定他们是否在新版本中修复了它。顺便说一句,您也可以使用适当的扩展名保存为.pdf或其他几种格式,如
plt.savefig('name.pdf')
在您拥有更高声誉之前,您不能对答案进行投票,但应该在上/下箭头的同一位置打勾,您可以单击以接受。啊,是的!!我发现了!:)
import networkx as nx
import networkx.generators.small as gs
import matplotlib.pyplot as plt
g = gs.krackhardt_kite_graph()
nx.draw_networkx(g)
plt.show()
import networkx as nx
import networkx.generators.small as gs
import matplotlib.pyplot as plt
g = gs.krackhardt_kite_graph()
nx.draw(g,with_labels=True)
plt.savefig('tmp.png')