Есть программа,которая рисует траекторию полёта снаряда. При запуске программы всё работает хорошо,но мне надо этот график перерисовывать.Пробовал очищать график,удалять - ничего не помогало
Подскажите,как перерисовать график?Функция
draw1 должна как раз его перерисовывать
plt.ion()
V0=10 #Нач скорость
a=45 #Угол
m=1 #Масса
k=1 #Коэфф сопротивления воздуха
class ExampleApp(QtWidgets.QMainWindow, design.Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
m = PlotCanvas(self, width=7, height=5.5)
m.move(400,10)
self.pushButton.clicked.connect(self.draw1)
def draw1(self):
global V0
V0=100
PlotCanvas()
class PlotCanvas(FigureCanvas):
def __init__(self, parent=None, width=5, height=4, dpi=100):
fig = Figure(figsize=(width, height), dpi=dpi)
FigureCanvas.__init__(self, fig)
self.setParent(parent)
rect = fig.patch
rect.set_facecolor('#19232d')
fig.clear()
FigureCanvas.setSizePolicy(self,
QSizePolicy.Expanding,
QSizePolicy.Expanding)
FigureCanvas.updateGeometry(self)
self.plot()
def Lenght(self,V0, a, m, k): #Расчёт траектории (совокупность координат (x,y) )
...
return x_m, y
def plot(self):
global V0, a, m, k,line1
x_m, y = self.Lenght(V0, a, m, k) #Передача данных в функцию,которая вернёт данные для построения графика
ax = self.figure.add_subplot(111)
#Отрисовка
ax.plot(x_m, y, color="#ffab03")
self.draw()
print(1)
def main():
app = QtWidgets.QApplication(sys.argv)
window = ExampleApp()
app.setStyleSheet(qdarkstyle.load_stylesheet(qt_api='pyqt5'))
window.show()
app.exec_()
if __name__ == '__main__':
main()