Pylab - “模块”对象没有属性“图”

Posted

技术标签:

【中文标题】Pylab - “模块”对象没有属性“图”【英文标题】:Pylab - 'module' object has no attribute 'Figure' 【发布时间】:2015-11-23 15:17:12 【问题描述】:

我正在尝试使用 Tkinter 创建视图,因此我也在使用 pylab。我的问题是我收到一条错误消息:

AttributeError: 'module' 对象没有属性 'Figure'

并且错误来自这行代码:

self.fig = FigureCanvasTkAgg(pylab.figure(), master=self)

我是 python 新手,所以我不知道如何解决这个问题,因为 figure() 应该是 pylab 库的一部分。

任何有关如何解决此问题的建议将不胜感激。

编辑

这是完整的代码:

from Tkinter import *
import ttk
from ttk import Style
import pylab
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import matplotlib.pyplot as plt
from numpy import cumsum
import matplotlib

class GUI(Frame):
    def __init__(self, parent, motspiller):
        Frame.__init__(self, parent)
        self.style = Style()
        self.fig = None
    def setup(self):
        self.style.theme_use("default")
        self.pack(fill=BOTH, expand=1)
        label = Label(self.parent)
        label.place(x=800, y=50)
        quit_button = Button(self, text="Quit", command=self.quit)
        quit_button.place(x=1000, y=450)

        self.fig = FigureCanvasTkAgg(pylab.figure(), master=self)
        self.fig.get_tk_widget().grid(column=0, row=0)
        self.fig.show()

【问题讨论】:

您可能忘记了导入,请向我们展示您的完整代码 @Natecat 代码已添加 你能在你的python解释器中运行这个:import pylab; f=pylab.figure()吗? 是否有任何脚本在与您从名为 pylab.py 运行此文件的位置相同的文件夹中? 你能从pylab那里得到任何方法来正常运行吗?我认为您的导入有问题 【参考方案1】:

如果您无法运行任何其他 pylab 函数,则说明您的安装存在问题。我在安装matplotlibpylab 时遇到了类似的错误,事实证明安装matplotlib为您安装pylab,而单独安装pylab最重要的是会导致那些确切的问题。一个简单的pip uninstall pylab 为我做了这件事,因为它删除了新安装的pylab 并让我导入与matplotlib 捆绑在一起的那个。

【讨论】:

在重新安装 matplotlib 之前,我必须卸载 pylab 和 matplotlib。 我卸载了 pylab 和 matplotlib,重新安装了 matplotlib,然后运行了 pip2 list。我没有看到 pylab 安装。我打开python并尝试import pylab,但它没有说ImortError: No module named lib

以上是关于Pylab - “模块”对象没有属性“图”的主要内容,如果未能解决你的问题,请参考以下文章

Python Matplotlib模块--pylab

AttributeError:“模块”对象没有属性

模块'对象没有属性'drawMatches'opencv python

AttributeError:“模块”对象没有属性“WebSocketApp”

“模块”对象没有“绘制”属性是啥意思?我如何解决它?

AttributeError:“模块”对象没有属性