PyQt4 / matplotlib: как исправить MatplotlibDeprecationWarning из-за axes.hold () - PullRequest
0 голосов
/ 14 февраля 2019

Я использую 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()

1 Ответ

0 голосов
/ 14 февраля 2019

В документации сказано, что Axes.hold() теперь всегда по умолчанию установлено на true, поэтому вы можете успешно удалить эту строку кода: self.axes.hold(True) и быть счастливым.

ПроверьтеDocs

...