キーが押されるか、マウスがクリックされるまで、pylabフィギュアを一時停止するにはどうすればよいですか? (Matplotlib)
マウスのキーが押されるまでpylabフィギュアを一時停止するには、 "button_press_event"を使用できます。 重要なイベント。
ステップ
- 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。
- "TkAgg"を設定します 背景。
- インタラクティブモードをオンにします。
- 新しいフィギュアを作成するか、既存のフィギュアをアクティブにします。
- 変数を作成します。pause=False。
- "button_press_event"のときはいつでも 、図を一時停止します。
- 関数をイベントにバインドします。
- データを作成 x およびy numpyを使用したデータポイント。
- Trueを繰り返します ループしてプロットの線と色を変更します。
- 図を表示するには、 show()を使用します メソッド。
例
import matplotlib from matplotlib import pyplot as plt import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True matplotlib.use("TkAgg") plt.ion() fig = plt.figure() pause = False def onclick(event): global pause pause = not pause fig.canvas.mpl_connect('button_press_event', onclick) data = np.linspace(-10, 10, 100) x = np.sin(data) y = np.cos(data) flag = 1 while True: if not pause: if flag == 1: fig.clear() plt.plot(data, y, color='red') flag = 0 else: fig.clear() plt.plot(data, x, color='yellow') flag = 1 fig.canvas.get_tk_widget().update()
出力
マウスボタンをクリックするまで、正弦波と余弦波が黄色と赤で交互に表示されます。いずれかのマウスボタンをクリックすると、フィギュアが一時停止します。
-
Matplotlibで3D連続線をプロットする方法は?
Matplotlibで3D連続線をプロットするには、次の手順を実行できます- 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。 xを作成します およびy numpyを使用したデータポイント。 zを作成します xを使用したデータポイント およびy データポイント。 figure()を使用して、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします メソッド。 3D投影を使用して、サブプロット配置として軸を追加します。 xをプロットします 、 y およびz plot()を使用したデータポイント メソッ
-
フラスコでMatplotlibを表示する方法は?
Flaskでプロットを表示するには、次の手順を実行できます- 小さなアプリケーションを作成します。 Flaskアプリケーションを実行するには、現在のディレクトリに移動します。 $ export FLASK_APP =file.py $フラスコ実行 ブラウザを開き、url:http://127.0.0.1:5000 /print-plot/を押します 図をプロットするために、ランダムを使用してxとyのデータポイントを作成できます。 作成した軸にデータポイントxとyをプロットします。 図をpng図形式で記述します。 BytesIOのコンテンツ全体を取得します オブジェクト。 例