Python 为什么matplotlib返回对象而不是打印它?
我在Jupyter的当前版本中运行这个 我的一个单元格包含以下内容Python 为什么matplotlib返回对象而不是打印它?,python,python-3.x,matplotlib,jupyter-notebook,Python,Python 3.x,Matplotlib,Jupyter Notebook,我在Jupyter的当前版本中运行这个 我的一个单元格包含以下内容 import matplotlib.pyplot as plt def main(): a_list = list(range(20)) plt.plot(a_list) plt.show() main() 当我运行kernel>Restart&runall时,我得到的唯一输出是一个绘图图: 当我用run按钮直接运行单元格时,我得到了预期的绘图 当我将main()移动到它自己的单元格
import matplotlib.pyplot as plt
def main():
a_list = list(range(20))
plt.plot(a_list)
plt.show()
main()
当我运行kernel>Restart&runall
时,我得到的唯一输出是一个绘图图:
当我用run
按钮直接运行单元格时,我得到了预期的绘图
当我将main()
移动到它自己的单元格,然后运行kernel>Restart&runall
时,我得到了预期的绘图
如果您将
%matplotlib inline
放在笔记本的开头,然后运行kernel>Restart&runall
,您会得到预期的绘图吗?(如果是,则在启动IPython笔记本时自动运行%matplotlib inline
)。是的,添加%matplotlib inline
可以使初始示例按预期工作。但是,到底发生了什么?为什么这是必要的(有时)?有人怎么知道会这样做呢?我不太确定,但我相信这里的问题是有很多可能的选择,而IPython/Jupyter没有选择正确的/没有配置为选择您想要的。查看哪些文档有链接。