Я хочу сделать блокнот Jupyter, который будет отображать некоторые данные каждый раз, когда я нажимаю кнопку «График». Проблема в том, что каждый раз, когда я нажимаю, он создает новый график под предыдущим. Я хочу быть в состоянии очистить существующие участки. Я попытался добавить кнопку «Очистить», которая вызывает plt.close ('all'), но она не работает - оригинальный сюжет все еще там. Вот пример кода, чтобы показать, что происходит:
#%%
%matplotlib notebook
from matplotlib import pyplot as plt
import numpy as np
from ipywidgets import interact, interactive, fixed, interact_manual
import ipywidgets as widgets
from IPython.display import display
def eventhandler(obj)
nums=np.random.randint(low=1, high=1000, size=100)
plt.plot(nums)
def clearplots(obj):
plt.close('all')
button=widgets.Button(description='Plot', disabled=False)
button.on_click(eventhandler)
clear=widgets.Button(description='Clear', disabled=False)
clear.on_click(clearplots)
widgets.HBox([button,clear])
Что я здесь не так делаю?