2016-12-21 45 views
0

私はmatplotlibを使用してインタラクティブな図を作成しています。matplotlib(Python)のGUIボタンを使用して中止する

入力として与えられたデータはリアルタイムで計算され、図の作成に使用された関数がデータの描画準備ができたときに呼び出されるため、アニメーションモジュールを使用できません。これとは別に、新しいデータは前のものと同じ軸に表示されず、出力図には3DプロットとGUIウィジェットが含まれます。

データが描画されるたびに、ユーザーが出力とやり取りしたい場合はplt.pause(30)を呼び出します。 30秒が経過すると、数字が更新されます。

私がしようとしているのは、押したときにplt.pauseをキャンセルしてプログラムの実行をブロック解除するGUIボタンを作成することです。今まで私はこの簡単な(?)質問への答えを見つけることができませんでした。 GUIからplt.pause()を停止する方法があるかどうかは知っていますか?何とかGUIウィジェットにバインドしますか?そうでない場合は、この状況を回避する方法はありますか?

答えて

0

私は、何が主な考えであるかを理解するために、matplotlibのgithubに行く必要がありました。次のような機能:

def button_function(val): 
    plt.gcf().canvas.stop_event_loop() 

on_clickedを使用してボタンで接続したときに私が欲しいまさにありません。 この質問は1日私を困惑させ、私が質問を投稿したとき、私は10分以内に答えを見つけました。私にそれを書き留める方法を与えるためのstackoverflowありがとう....

+2

[ラバーダックのデバッグ](https://ja.wikipedia.org/wiki/Rubber_duck_debugging)はもう一度節約! – Kroltan

関連する問題