如何在 PyQt 中使用按钮清除绘图?

How to clear a plot with a pushButton in PyQt?

我使用 QT Designer 在 PyQt 中创建了一个小 GUI。我有一个按钮。"Clear" 按钮必须清除此图(我的清除按钮调用 pushButton)。我尝试编写一些代码,但没有 运行。我怎样才能创建这个清除按钮?谢谢你。

import sys
from PyQt4 import QtCore, QtGui, uic


form_class = uic.loadUiType("gugus.ui")[0]  # Load the UI


class MyWindowClass(QtGui.QMainWindow, form_class):

def __init__(self, parent=None):

    QtGui.QMainWindow.__init__(self, parent)
    self.setupUi(self)

    self.pushButton.clicked.connect(self.btn_pgb)
    self.matplotlibwidget.axes.plot([0, 1, 1.5, 3], [50, 1, 2, 0])

def btn_pgb(self):  

    # Her I should clear my plot, but don`t know how `enter code here`
    self.progressBar.setValue(69)


app = QtGui.QApplication(sys.argv)
myWindow = MyWindowClass()
myWindow.show()
app.exec_()

要清除轴,请使用 axes.clear()。要清除完整数字,请使用 axes.figure.clear()

在你的情况下,这将是

self.matplotlibwidget.axes.clear()

self.matplotlibwidget.axes.figure.clear()

之后您需要重新绘制 canvas。

self.matplotlibwidget.axes.figure.canvas.draw_idle()