はじめに
matplotlibのwidgets.Sliderを使用して、インタラクティブに円の半径と位置を調整できるグラフの作成方法を解説します。この機能を利用することで、ユーザーがリアルタイムでパラメータを変更し、その効果をすぐに確認することができます。
コード

解説
モジュールのインポート
グラフの初期設定
plt.subplots_adjust(left=0.25, bottom=0.25)を使用して、グラフの左側と下部に0.25の余白を設け、スライダーを表示するための十分なスペースを確保しています。
データの生成とプロット
円を媒介変数表現でプロットします。初期設定として半径は2、中心座標は(x, y) = (0, 0)とし、l, = plt.plot(x, y, lw=2)のコマンドで円を描画します。
スライダーの設定
スライダーの設置
グラフの下の方に三段のスライダーを設置します。
スライダーの調整
sli_y = Slider(ax_y, ‘y center’, -10, 10, valinit=y0, valstep=delta)では、ax_yはスライダーを設置する場所、’y center’はスライダーのラベル、-10と10はスライダーの選択可能な範囲、valinitはスライダーの初期値、valstepはスライダーの値を変更する際のステップ幅を表します。
スライダーの有効化
スライダーでセットした値は「sli_r.val」などで取得し、「set_xdata」と「set_ydata」メソッドを使って円のプロットデータを更新します。「fig.canvas.draw_idle()」を実行することで円を再描画し、静止状態を維持します。また、「on_changed(update)」関数によって設定したスライダーを有効化しています。
リセットボタンの設定
ボタンをおすことでスライダーがリセットされ初期状態に戻ります。
スライダーを動かした場合


まとめ
matplotlibのwidgets.Sliderを使うことで、円の半径や位置をインタラクティブに調整できるグラフを作成できました。この機能はデータの可視化やパラメータ調整が必要な場面で非常に役立ちます。スライダーの実装は比較的簡単で、他のグラフィカル要素の調整にも応用できるため、様々な場面で活用することができるでしょう。
コメント