使用matplotlib(Python)中的GUI按钮取消暂停

时间:2016-12-21 10:00:38

标签: python matplotlib pause graphical-interaction

我正在使用matplotlib创建一个交互式图形。

作为输入给出的数据是实时计算的,并且在准备绘制数据时调用用于创建图形的函数,因此我无法使用动画模块。除此之外,新数据不会出现在与前一个相同的轴上,输出图包括3d绘图和gui小部件。

每次绘制数据时,如果用户想要与输出进行交互,我会调用pl​​t.pause(30)。 30秒后,数字会更新。

我要做的是创建一个gui按钮,当按下该按钮时,将取消plt.pause并取消阻止程序执行。直到现在我还没能找到这个简单(?)查询的答案。有没有人知道是否有办法从GUI停止plt.pause(),通过它以某种方式绑定到gui小部件?如果没有,有没有办法绕过这种情况?

1 个答案:

答案 0 :(得分:0)

好的,我必须去matplotlib的github来了解主要想法是什么。功能如下:

def button_function(val):
   plt.gcf().canvas.stop_event_loop()
当使用on_clicked连接按钮时,

完全符合我的要求。 这个问题困惑了我一天,当我发布问题时,我发现答案不到10分钟。谢谢stackoverflow给我一个写下来的方法....