IPython, "name 'plt' not defined"

15

我最近为了上大学而在笔记本电脑上安装了Atom作为集成开发环境,并安装了Hydrogen作为一个方便的解决方案来展示一些绘图。 但是每当我运行Hydrogen时,都会出现以下错误:

NameError                                 Traceback (most recent call last)
< ipython-input-1-1eb00ff78cf2>  in <module>

----> 1 plt.show()


NameError: name 'plt' is not defined

然而,当正常执行时,Matplotlib运行良好,IPython似乎也是如此。 这是我试图测试运行的代码:

%matplotlib ipympl

import matplotlib.pyplot as plt

a_x=[1,2,3,4,5,6]
a_y=[1,2,3,4,5,6]

plt.plot(a_x, a_y)
plt.show()

该问题的视频可以在这里观看。

输入图像描述

  • 选择运行

输入图像描述

  • 导致的错误

输入图像描述

2个回答

29

您首先需要导入库。将以下内容添加到代码开头。

from matplotlib import pyplot as plt

2
“你必须先导入库”这种说法是不正确的。在matplotlib用户指南中,导入pyplot的规范方式是import matplotlib.pyplot as plt - Trenton McKinney

14
如 OP 所示,代码中出现了 import matplotlib.pyplot as plt,但该行代码未被执行。
  • 你只执行了选中的第 9 行代码 plt.show(),而不是整个文件。
通过仔细阅读回溯信息,就能看到问题所在。脚本中的第 9 行代码是回溯信息中的第一行:----> 1 plt.show() 解决方法是运行整个文件,而不是单独的一行。请点击 Run All 而不是 Run

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接