Matplotlib pyplot 冻结,除了 Spyder 上的白屏外不显示任何内容

Posted

技术标签:

【中文标题】Matplotlib pyplot 冻结,除了 Spyder 上的白屏外不显示任何内容【英文标题】:Matplotlib pyplot frozen and not displaying anything except a white screen on Spyder 【发布时间】:2020-07-13 05:16:05 【问题描述】:

每当我尝试在 Spyder (ver4.0.1 python ver3.7.6 Ipython ver7.12.0) 上绘制任何东西时,我的脚本运行良好,但是 pyplot.show 冻结在白色屏幕中并拒绝显示任何内容。例如,在下面的屏幕截图中,打印参数行代码出现在绘图函数之后,但仍输出到命令屏幕。每当我尝试关闭冻结的绘图显示时,我的内核也会崩溃,我需要重新启动它。

运行脚本后的初始冻结图:

强制关闭后 - 内核崩溃:

我已经尝试过测试我的 pyplot 模块,但在我看来,每当我运行任何 pyplot 命令时,都会出现冻结的显示图并使我的内核崩溃。这包括以下代码:

from matplotlib import pyplot as plt

plt.figure()
#plt.title('test')
plt.plot(x,y)
plt.show()

我逐行运行它,一旦它点击 plt.figure,它就会输出白屏,以及 plt.anything 以任何顺序输出 - 它只是默认为白屏。

奇怪的是它只是输出并且被冻结并且你不能与之交互,但是如果你只是在角落里忽略它,Spyder 的其余部分运行良好。

我多次尝试重新安装模块、spyder 和 Anaconda3 本身,但没有一个重新安装有助于解决问题。我希望这里的人们对如何解决这个问题有一个想法,因为我花了一整天的时间却一无所获:(

【问题讨论】:

你使用的是什么 Matplotlib 后端? 好的,我刚刚从第二个屏幕截图中看到您正在使用 Tk。 ipykernel 中似乎有该后端的错误,因此您目前无法使用它。请同时使用其他后端。 嗨@CarlosCordoba 很抱歉没有回复我,我没有收到通知。我如何切换到不同的后端,因为我对 python 很陌生,以解决问题?找到这个链接 ---> ***.com/questions/3285193/… 请转到Tools > Preferences > IPython console > Graphics > Backend,在那里选择“自动”并重新启动Spyder。 【参考方案1】:

我遇到了完全相同的问题。更改后端并没有帮助,但我通过pip 安装了matplotlib。我可以通过使用pip uninstall matplotlib 卸载matplotlib 并使用anaconda 导航器重新安装来解决问题。

【讨论】:

以上是关于Matplotlib pyplot 冻结,除了 Spyder 上的白屏外不显示任何内容的主要内容,如果未能解决你的问题,请参考以下文章

matplotlib.pyplot.text

以最简单的方式在 Matplotlib 中的 PyPlot 中添加图例

九个例子玩转Matplotlib.pyplot 三维绘图

python 使用 matplotlib.pyplot来画柱状图和饼图

Python 绘图包 Matplotlib Pyplot 教程

matplotlib 和 cx_freeze 的问题