我正在 Ubuntu 中作为 Windows 计算机(作为主机)之上的 Virtual-Box guest 工作,并且我正在尝试从终端运行我的 python 脚本。我在使用 pip install 安装 matplotlib 时遇到困难。我设法使用安装它
sudo apt-get install python-matplotlib
但是,我无法调出我在代码中创建的图像:
import numpy as np
import matplotlib.pyplot as plt
import random as random
from random import randrange
image = plt.imshow(mymatrix)
plt.show()
如果我将 matplotlib 导入为:
import matplotlib as plt
我在尝试运行脚本时收到以下错误:
AttributeError: 'module' object has no attribute 'imshow'
如果我将 matplotlib 导入为:
import matplotlib.pyplot as plt
我收到以下错误:
raise ImportError, str(msg) + ', please install the python-tk package' ImportError: No module named _tkinter, please install the python-tk package
在尝试使用“pip install python-tk”安装 python-tk 时,这就是我得到的:
~/ising $ pip install python-tk Collecting python-tk Could not find a version that satisfies the requirement python-tk (from versions: ) No matching distribution found for python-tk
我不确定我是否从一开始就错误地安装了 matplotlib。我知道 pyplot 不会自动随 matplotlib 导入,从控制台安装它是否也是如此?看来我在这个阶段已经尝试了一切。
最佳答案
问题似乎是您没有图形backend安装。您遇到的关于 Python Tk 的错误是因为 Tk 通常随任何 Python 发行版一起提供,所以您至少应该有这个。您可以安装 Tk、Pyqt4、Pyqt5、Wx、GTK(可能是其他)的任何 Python 绑定(bind),以获得有效的交互式图形后端。检查软件包存储库以获取要安装的实际软件包名称。
请记住,像 imshow
这样的函数是(子)包 matplotlib.pyplot
的一部分,而不是 matplotlib
本身。如果您打算执行 plt.imshow(...)
,则 import matplotlib as plt
是完全错误的。正确的导入是 from matplotlib import pyplot as plt
或 import matplotlib.pyplot as plt
。
关于Python:导入matplotlib但无法使用imshow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48151686/