如果我只导入matplotlib库,我可以用这个语句来达到我的预期。但是现在 matplotlib 被嵌入到 wxpython 中。不仅导入matplotlib,还
from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas
from matplotlib.backends.backend_wxagg import NavigationToolbar2WxAgg as NavigationToolbar
显然此方法(get_tk_widget().update()
) 返回用于实现FigureCanvasTkAgg 的Tk 小部件。但我在wxpython 中使用框架。所以我想知道对 wxpython 达到相同效果的函数。
我遇到的问题是通过按钮或鼠标单击使程序暂停。一般解决方案如下:
import matplotlib
matplotlib.use("TkAgg")
import matplotlib.pyplot as plt
plt.ion()
pause=False
def onClick(event):
global pause
pause =not pause
fig.canvas.mpl_connect('button_press_event', onClick)
while True:
if not pause:
...doing codes...
fig.canvas.get_tk_widget().update()
但是,我的图是“FigureCanvasWxAgg”对象,没有属性“get_tk_widget”。所以我正在寻找 wxpython 中的另一个函数。
最佳答案
后来发现没有调用'onClick'函数,我加了一个按钮调用。另外,函数'canvas.get_tk_widget().update()' 被'FigureCanvas.draw()'和'FigureCanvas.flush_events()'取代。以上是我的解决方案。
关于python - 在 python 中使用什么代替 fig.canvas.get_tk_widget().update(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50322729/