Maison >développement back-end >Tutoriel Python >Comment intégrer la visualisation Matplotlib dans les applications PyQt4 ?
Intégrer Matplotlib dans PyQt4 : un guide complet
La création de visualisations de données interactives dans vos interfaces utilisateur PyQt4 peut être réalisée de manière transparente grâce à l'intégration de Matplotlib . Bien que trouver des exemples d'intégration de Matplotlib puisse être difficile, comprendre le processus est assez simple.
Comment intégrer Matplotlib dans PyQt4
Pour intégrer Matplotlib dans PyQt4, suivez ces étapes :
Exemple de code :
Voici un exemple de code simple pour illustrer le processus :
<code class="python">import sys from PyQt4 import QtGui from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas from matplotlib.backends.backend_qt4agg import NavigationToolbar2QT as NavigationToolbar from matplotlib.figure import Figure import random class Window(QtGui.QDialog): def __init__(self, parent=None): super(Window, self).__init__(parent) # a figure instance to plot on self.figure = Figure() # this is the Canvas Widget that displays the `figure` # it takes the `figure` instance as a parameter to __init__ self.canvas = FigureCanvas(self.figure) # this is the Navigation widget # it takes the Canvas widget and a parent self.toolbar = NavigationToolbar(self.canvas, self) # Just some button connected to `plot` method self.button = QtGui.QPushButton('Plot') self.button.clicked.connect(self.plot) # set the layout layout = QtGui.QVBoxLayout() layout.addWidget(self.toolbar) layout.addWidget(self.canvas) layout.addWidget(self.button) self.setLayout(layout) def plot(self): ''' plot some random stuff ''' # random data data = [random.random() for i in range(10)] # create an axis ax = self.figure.add_subplot(111) # discards the old graph ax.clear() # plot data ax.plot(data, '*-') # refresh canvas self.canvas.draw() if __name__ == '__main__': app = QtGui.QApplication(sys.argv) main = Window() main.show() sys.exit(app.exec_())</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!