为什么我不能访问此matplotlib类的静态成员

时间:2015-07-10 09:03:06

标签: python matplotlib

我不明白为什么我无法从班级var str = "/html5/test1"; var test = str.split("/")[2]; console.log(test); //gives test1 访问静态成员toolitems。为了研究这个问题,我做了以下几点:

NavigationToolbar2QT

确定。所以现在我确定matplotlib模块的位置,如果我打开imp.find_module('matplotlib') >>> (None, '/usr/lib/pymodules/python2.7/matplotlib', ('', '', 5)) ,那么我会找到具有静态成员usr/share/pyshared/matplotlib/backends/backends_qt.py的类NavigationToolbar2QT

toolitems

现在,如果我执行以下操作:

class NavigationToolbar2QT( NavigationToolbar2, qt.QWidget ):
    # list of toolitems to add to the toolbar, format is:
    # text, tooltip_text, image_file, callback(str)
    toolitems = (
        ('Home', 'Reset original view', 'home.ppm', 'home'),
        ('Back', 'Back to  previous view','back.ppm', 'back'),
        ('Forward', 'Forward to next view','forward.ppm', 'forward'),
        (None, None, None, None),
        ('Pan', 'Pan axes with left mouse, zoom with right', 'move.ppm', 'pan'),
        ('Zoom', 'Zoom to rectangle','zoom_to_rect.ppm', 'zoom'),
        (None, None, None, None),
        ('Subplots', 'Configure subplots','subplots.png', 'configure_subplots'),
        ('Save', 'Save the figure','filesave.ppm', 'save_figure'),
        )

这就是我有点卡住的地方,为什么我不能访问这个静态成员?我必须在这里遗漏一些小事。

1 个答案:

答案 0 :(得分:0)

问题解决了!正如布鲁诺评论的那样,我正在寻找错误的道路。我正在查看usr/share/pyshared/matplotlib/backends/backends_qt.py的代码,但我正在导入代码from matplotlib.backends.backend_qt4,这些是不同的模块。