Matplotlib imshow 显示空白图像

1 投票
1 回答
1780 浏览
提问于 2025-04-18 17:39

我觉得这个应该很简单,但看来并不是。

from scipy import misc
import matplotlib.pyplot as plt

img = misc.imread("Alyson.jpg")
plt.imshow(img)
plt.show()

它画出了一个空白的画布。检查数组时,值显然是正确加载的。我真的不知道问题出在哪里。我也尝试过用matplotlib.image.imread和PIL.Image.open来加载,结果也是一样。

我在运行Lubuntu 13.04。这里是一些库的版本信息:

Pillow==2.5.2
matplotlib==1.3.1
numpy==1.8.2
scipy==0.14.0

编辑:解决了! 我通过使用matplotlib.use("WX")来切换渲染后端。

1 个回答

1

我不太确定问题的原因是什么,但我把后端换成了wxPython,结果用misc.imread或matplotlib.image.imread加载的图片都正常显示了。

import matplotlib
matplotlib.use("WX")
import matplotlib.pyplot as plt
...etc

撰写回答