PyQt4 / matplotlib:如何修复由于axes.hold()导致的MatplotlibDeprecationWarning

问题描述 投票:3回答:1

我正在使用matplotlib和python3.6。我的程序运行成功,但它显示以下警告消息:

/home/sree/python/PyPrgm.py:41:MatplotlibDeprecationWarning:axes.hold已弃用。

我引用了http://matplotlib.org/api/api_changes.html。我怎么能摆脱这个警告?

class PyTabWidget(QTabWidget):
    def __init__(self):
        super(PyTabWidget,self).__init__()
        tab1=FirstTab()
        self.addTab(tab1,"TAB1")

class FirstTab(QTabWidget):
    def __init__(self):
        super(FirstTab,self).__init__()
        grp1=QGroupBox("GroupBox1")
        grp1.setStyleSheet("QGroupBox { border:1px ; background-color:white}")
        graph=TwoD_GraphWindow()    #2D graphWindow object
        layout=QGridLayout()    #create layout
        layout.setColumnMinimumWidth(0, 10)
        layout.setColumnMinimumWidth(2, 10)
        layout.setColumnMinimumWidth(4, 10)
        layout.setRowMinimumHeight(0, 10)
        layout.setRowMinimumHeight(4, 10)
        layout.addWidget(graph, 2, 2)
        self.setLayout(layout)  #set the layout
        A=np.linspace(0,10,100)
        graph.DrawGraph(A)  #invoke DrawGraph() function

class TwoD_GraphWindow(FigureCanvas): #Class for 2D window
    def __init__(self):
        self.fig=Figure() #Figure() object
        self.axes = self.fig.add_subplot(111)
        FigureCanvas.__init__(self, self.fig) #creating FigureCanvas
        self.setWindowTitle("Main") # sets Window title

    def DrawGraph(self, x):#Fun for Graph plotting
        self.axes.clear() #clear the axes
        self.axes.plot(x,np.sin(x),'-' ) #plots the 2D graph
        self.axes.hold(True) #do not clear the axis
        self.axes.plot(x,np.cos(x),'--');
        self.draw()
matplotlib pyqt4
1个回答
3
投票

文档说,Axes.hold()现在默认设置为true,所以你可以成功删除这行代码:self.axes.hold(True)并且开心。

Check out the Docs

© www.soinside.com 2019 - 2024. All rights reserved.