我正在使用Jupyter并尝试让我的情节互动。
所以我有一个情节。我有一个ipywidgets按钮。
点击按钮我需要更新绘图,就像与滑块交互一样。
但我不能。
仅当matplotlib使用' notebook'后端,但看起来很糟糕。同时,交互可以与任何类型的图表一起使用。有没有办法重现这个,而不是使用互动?
#this works fine! But toolbar near the graph is terible
#%matplotlib notebook
#this does not work
%matplotlib inline
from matplotlib.pyplot import *
button = ipywidgets.Button(description="Button")
def on_button_clicked(b):
ax.plot([1,2],[2,1])
button.on_click(on_button_clicked)
display(button)
ax = gca()
ax.plot([1,2],[1,2])
show()
答案 0 :(得分:4)
作为解决方法,我们可以将整个绘图重新绘制为Output小部件,然后显示它而不会闪烁。
%matplotlib inline
from matplotlib.pyplot import *
button = ipywidgets.Button(description="Button")
out = ipywidgets.Output()
def on_button_clicked(b):
with out:
clear_output(True)
plot([1,2],[2,1])
show()
button.on_click(on_button_clicked)
display(button)
with out:
plot([1,2],[1,2])
show()
out