Error using FigureCanvasQTAgg in MatplotlibWidget pyqt5

Ich möchte mit pyqt5 und matplotlib auf meiner GUI zeichnen. Ich habe eine Klasse namens MatplotlibWidget erstellt, die die Figur und Leinwand meines Plots erstellt. Ich habe jedoch ein Problem damit, meine Zeichenfläche mit der Funktion FigureCanvasQTAgg (die eine matplotlib-Funktion ist) zu generieren.

Hier ist der Teil meines Codes, der fehlerhaft ist:

import matplotlib.pyplot as plt
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg
from matplotlib.figure import Figure

#Some more code...not relevant

class MatplotlibWidget(QWidget):
    def __init__(self):
        QWidget.__init__(self)
        self.fig = Figure()
        self.canvas = FigureCanvasQTAgg(self.fig) #line 86
        self.axis = self.fig.add_subplot(111)

        self.layoutVerticalTest = QVBoxLayout(self)
        self.layoutVerticalTest.addWidget(self.canvas)

Ich habe diesen Fehler:

File "/Users/AlexisTuil/Desktop/projet inno/sc_analysis/visualisation.py", line 86, in 
__init__self.canvas = FigureCanvasQTAgg(self.fig)
File "/usr/local/lib/python3.5/site packages/matplotlib/backends/backend_qt4agg.py", line 76, in     
__init__FigureCanvasQT.__init__(self, figure)
File "/usr/local/lib/python3.5/site-packages/matplotlib/backends/backend_qt4.py", line 71, in
__init__QtWidgets.QWidget.__init__(self)
TypeError: __init__() missing 1 required positional argument: 'figure'
Abort trap: 6

Ich habe in vielen Foren gesucht, aber ich konnte keine Lösung für mein Problem finden. Ich verstehe nicht, warum es ein fehlendes "Positionsargument" gibt. Bitte hilf mir

Ich bin auf MacOS El Capitan mit python3.5 64bit. Ich habe matplotlib mit pip installiert, wenn es helfen kann.

Danke Leute :

Antworten auf die Frage(2)

Ihre Antwort auf die Frage