はじめに
共通の軸を共有する複数のプロットを作成する際、あるプロットをズームインまたはズームアウトするときに他のプロットも更新されるようにすることが望まれる場合があります。この実験では、Matplotlib の sharex および sharey 属性を使用して軸を共有するプロットを作成する方法を探ります。
VM のヒント
VM の起動が完了したら、左上隅をクリックして ノートブック タブに切り替え、Jupyter Notebook を使って練習しましょう。
Jupyter Notebook の読み込みには数秒かかる場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。
学習中に問題が発生した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。
必要なライブラリをインポートする
最初のステップは、必要なライブラリをインポートすることです。この例では、numpy と matplotlib を使用します。
import matplotlib.pyplot as plt
import numpy as np
データを作成する
次に、プロットするためのデータを作成する必要があります。この例では、2 つのデータセット sin(2*pi*t) と sin(4*pi*t) を作成します。
t = np.arange(0, 10, 0.01)
最初のプロットを作成する
次に、subplot を使って最初のプロットを作成しましょう。subplot は 3 つの引数をとります。行数、列数、およびプロット番号です。この例では、2 行 1 列 (211) のプロットを作成します。これは、最初のプロットが上の行に表示されることを意味します。
ax1 = plt.subplot(211)
ax1.plot(t, np.sin(2*np.pi*t))
2 番目のプロットを作成する
次に、2 番目のプロットを作成します。再び subplot を使用しますが、今回は sharex 属性を最初のプロット (ax1) に設定します。これにより、2 番目のプロットが最初のプロットと同じ x 軸を共有するようになります。
ax2 = plt.subplot(212, sharex=ax1)
ax2.plot(t, np.sin(4*np.pi*t))
プロットを表示する
最後に、plt.show() を使ってプロットを表示できます。
plt.show()
まとめ
この実験では、Matplotlib の sharex および sharey 属性を使って共通の軸を共有するプロットを作成する方法を学びました。同じデータを異なるビューで表す複数のプロットを作成する際に役立ちます。軸を共有することで、ズームやパン操作を行ったときにプロットが同期したままであることを確認できます。