赞
踩
通过网上查询,大概知道了什么原因,记录一下:
%matplotlib inline的目的是内联绘制图形,而不是弹出窗口,它不是python语句,需要在控制台输入执行。
在spyder中如果想切换内联和弹出窗口绘制图形,可以在菜单Tools->Preferences->Ipython Console, Graphics标签下修改Graphics Backend。但这样设置,并不能让python程序运行的时候程序自己切换。如果想在运行程序时切换,需要用如下python语句(没有验证过):
- from IPython import get_ipython
- get_ipython().run_line_magic('matplotlib', 'inline')
我可以暂时阻止Spyder显示内嵌图像吗? - 问答 - Python中文网
python - Plot inline or a separate window using Matplotlib in Spyder IDE - Stack Overflow
在Spyder中,通常不需要手动使用`%matplotlib inline`魔法命令,因为Spyder的IPython控制台已经是一个图形化前端,它默认会内嵌显示matplotlib生成的图表。
如果你使用的是Spyder的IPython控制台,当你运行matplotlib绘图命令时,图表应该会自动以内联的方式显示出来。这是因为Spyder为了方便用户,已经配置了IPython控制台的默认行为。
如果处于某种原因,Spyder没有按预期显示图表,或者你希望确保使用`%matplotlib inline`的设置,你可以在IPython控制台中输入以下命令:
%matplotlib inline
这样会将matplotlib的绘图模式设置为内联模式,在IPython控制台中直接显示图表,而不是弹出一个新的窗口显示图表。
请确保在绘制图形之前执行这个命令,这样绘制的图才会正确地内联显示。
如果你的Spyder没有正确显示图形,也可以检查以下设置:
- 确保你已经安装了matplotlib库。
- 检查Spyder的偏好设置中的IPython控制台设置,确保内联绘图功能没有被禁用。
再次提醒,通常在Spyder中,不需要手动设置`%matplotlib inline`,因为默认配置就是内联显示图表。如果遇到问题,通常检查安装和配置就可以解决大部分情况。
在 Spyder 中使用 %matplotlib inline 主要是为了在 IPython 环境中(如 Spyder 的 IPython 控制台)直接显示 matplotlib 绘制的图形,而不是弹出一个新的窗口。%matplotlib inline 是一个 IPython 的魔法命令,用于在 Jupyter Notebook 或 IPython 控制台中嵌入图形。
但在 Spyder 的标准变量查看器或图形查看器中,你通常不需要这个魔法命令,因为 Spyder 已经默认配置为在其自己的图形窗口中显示 matplotlib 图形。然而,如果你在 Spyder 的 IPython 控制台中使用 %matplotlib inline,它将会把图形嵌入到控制台输出中,就像在 Jupyter Notebook 中一样。
如果你想在 Spyder 的 IPython 控制台中使用 %matplotlib inline,你可以简单地输入以下命令:
%matplotlib inline
然后,你可以像平常一样使用 matplotlib 来绘制图形,这些图形将会直接显示在 IPython 控制台的输出区域中。
请注意,如果你更喜欢在单独的窗口中查看图形(这是 Spyder 的默认行为),你不需要使用 %matplotlib inline。只需调用 plt.show()(其中 plt 是 matplotlib.pyplot 的常用别名),图形就会在一个新的窗口中打开。
最后,请确保你已经安装了 matplotlib,并且在 Spyder 的 Python 环境中正确配置了它。如果你遇到任何问题,可以尝试重新安装或更新 matplotlib 库。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。