问题
我用PyCharm使用Matplotlib时候(just for Mac),发现不能显示出图像。但是,我在Eclipse里面使用,却可以正常显示图像。
那么,可以确定的是,我PyCharm出了问题。到底是什么原因呢?
分析、解决
- 法一:没有加入show()方法
解决办法:
测试代码:
import numpy as np from matplotlib import pyplot as plt from skimage import data random_image = np.random.random([500, 500]) print(random_image) plt.imshow(random_image, cmap='gray') plt.colorbar() plt.show()
- 法二:Matplotlib的backend默认设置问题
找到你下载的Matplotlib的包的文件夹,文件下面有一个叫matplotlibrc的文件。
用编辑器打开matplotlibrc,然后查找backend的位置。
然后,你会发现,他采用的是macosx。很明显,不能用这种格式。重点是,他默认是采用”Agg”格式。很明显,不能使用这种格式,而是要换成”TkAgg”格式


解决办法:
用Vim命令把”macosx”修改为”TkAgg”
很遗憾,即使我修改了,在PyCharm中,依然没法打印出图像。
- 法三:PyCharm中使用命令修改backend格式
当然,这种方式是可行的。
解决办法:
在代码的最前面,加入以下代码:
# import matplotlib # matplotlib.use('TkAgg')
就可以了。
测试代码:
import matplotlib matplotlib.use('TkAgg') import numpy as np import matplotlib.pyplot as plt x=np.linspace(-np.pi,np.pi,256,endpoint=True) C,S=np.cos(x),np.sin(x) plt.plot(x,C) plt.plot(x,S) plt.show()

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/229444.html原文链接:https://javaforall.net
