Python:导入matplotlib但无法使用imshow

标签 python python-2.7 ubuntu matplotlib

我正在 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 pltimport matplotlib.pyplot as plt

关于Python:导入matplotlib但无法使用imshow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48151686/

相关文章:

python - 运行时错误 : Error creating new content types

python - Python告诉我语法错误,请解释

python - 从默认 ~/ntlk_data 更改 nltk.download() 路径目录

linux - 如何查看linux系统是否使用了较大的磁盘空间?

python - 如何使用 OpenCV 读取截断图像?

python - 获取范围 0 - 2*pi - python

Python 操作系统相关库 : Windows 7 SUA

python - 使用 nltk.download() 下载错误

tomcat - Ubuntu 服务器上 tomcat6 的权利?

python - unicode_literals 是做什么用的?