如何解决使用NetworkX在Jupyter Notebook上显示图
我正在尝试使用networkx软件包在python中绘制一个随机生成的锦标赛,但是jupyter笔记本在运行时不显示任何内容,我的图形已正确加载,因为我可以调用边数等,因此只需绘制部分无效。我在这里搜索了答案,最接近的是在调用nx.draw(G)函数之后添加plt.show(),但这并不能解决我的问题。
欢迎任何帮助!
我的参考代码:
import networkx as nx
import matplotlib.pyplot as plt
import numpy as np
SIZE=10
T = nx.DiGraph()
A = np.zeros((SIZE,SIZE))
# GENErating AN ADJACENCY MATRIX FOR A RANDOM TOURNAMENT
for i in range(SIZE):
for j in range(i):
if i==j:
pass
else:
if (np.random.binomial(n=1,p=0.5,size=1)==1)[0]:
A[i,j]=1
else:
A[j,i]=1
# ADDING EDGES TO THE GRAPH
for i in range(SIZE):
for j in range(SIZE):
if A[i][j] == 1:
T.add_edge(i,j)
# TRYING TO PLOT THE GRAPH
nx.draw(T)
plt.show()
解决方法
您需要在jupyter笔记本的开头添加以下内容
%matplotlib inline
这将使创建的绘图显示在笔记本本身中
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。