【问题标题】:Using NetworkX to show a digraph on Jupyter Notebook使用 NetworkX 在 Jupyter Notebook 上显示有向图
【发布时间】:2023-03-12 02:20:01
【问题描述】:

我正在尝试使用 networkx 包在 python 中绘制随机生成的锦标赛,但 jupyter notebook 在运行时不显示任何内容,我的图表已正确加载,因为我可以调用边数等,只是绘图部分不工作。我在这里搜索了答案,最接近的是在调用 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()

【问题讨论】:

  • 在 Google Colab 中运行您的代码,它会显示一个图表。

标签: python matplotlib graph jupyter-notebook networkx


【解决方案1】:

您需要将以下内容添加到 jupyter notebook 的开头

%matplotlib inline

这将导致创建的绘图显示在笔记本本身中

【讨论】:

  • 是的,我注意到我在以前的单元格上运行了 %matplotlib 笔记本,消除该行后它工作正常,无论如何谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-12
  • 2020-09-21
  • 1970-01-01
  • 2017-05-11
  • 2017-05-28
  • 2016-12-30
  • 2018-05-10
相关资源
最近更新 更多