设备:VMware Ubuntu22.04 Pycharm2023.01专业版
问题:
Pycharm matplotlib选择python console/run方式跑plt不显示图片。试一个简单代码时,选择run命令sciview中可以显示图,在python console中不显示。
输出:通常只输出以下语句
<Figure size 600x600 with 1 Axes>
尝试过的方法:
1、更改setting设置,没用,因为本身在sciview窗口中就不显示
2、后面加plt.show(),没效果
3、加一行matplotlib.use('Agg'),没效果
但是如果直接选择plt.savefig,图片是可以正常保存下来的。(但是多张图只能保存一张TT)
这个问题可能与PyCharm和matplotlib的默认行为有关。在PyCharm中使用Python Console时,默认情况下,matplotlib会使用一个非交互式的后端(例如Agg),这会导致图像不会显示在PyCharm的控制台中。
要解决这个问题,你可以尝试以下方法:
import matplotlib
matplotlib.use('Qt5Agg')
这将告诉matplotlib使用Qt5Agg后端,它支持交互式显示图像。
import matplotlib.pyplot as plt
# 绘制图像
plt.plot([1, 2, 3, 4])
plt.ylabel('Some numbers')
# 显示图像
plt.show()
import matplotlib.pyplot as plt
# 绘制图像
plt.plot([1, 2, 3, 4])
plt.ylabel('Some numbers')
# 在SciView窗口中显示图像
plt.show(block=False)
# 继续执行其他代码
这些方法中的一种应该可以解决在PyCharm中使用Python Console时matplotlib图像不显示的问题。如果仍然遇到问题,请检查PyCharm和matplotlib的版本兼容性,并确保相关的软件包已正确安装。