从matplotlib导入pyplot有问题

时间:2018-01-26 05:01:57

标签: python python-3.x matplotlib python-import

此程序目前无效

#!/usr/bin/env python3
import numpy as np
import cv2
from matplotlib import pyplot as plt

img = cv2.imread('trial.jpg',0)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])  # to hide tick values on X and Y axis
plt.show()

我收到错误

Traceback (most recent call last):
  File "C:\Users\Karl\Desktop\Python\OpenCV\matplotlib.py", line 4, in <module>
    from matplotlib import pyplot as plt
  File "C:\Users\Karl\Desktop\Python\OpenCV\matplotlib.py", line 4, in <module>
    from matplotlib import pyplot as plt
ImportError: cannot import name 'pyplot'

但是当我在I.E.中输入该代码的每一行时。 (使用IDLE)......它有效吗? 为什么会这样。它似乎是在执行所有这些代码时立即失败,但出于某种原因,当我将它单独输入到交互式环境中时。

1 个答案:

答案 0 :(得分:0)

从目录调用脚本或python时, 并导入matplotlib,它将检查当前工作目录中是否有任何名为matplolib的目录,而不是 安装matplotlib。

假设您的工作目录中有matplotlib目录,其中包含空白init文件,请执行以下操作:

import matplotlib 
print matplotlib.__version__

它会向您显示'module' object has no attribute '__version__'

print matplotlib.__file__为您提供matplotlib/__init__.pyc

此目录中有 no pyplot 。因此,你得到了你的错误。

<强>解决方案:  重命名或删除此目录,或者如果您不想重命名或删除,请将其移动到当前工作目录中的任何其他目录。