はじめに
この実験では、Matplotlib を使って簡単な軸線を作成する方法を学びます。mpl_toolkits.axisartist.axislinesライブラリを使って、x 軸と y 軸のラベル付きで、右側に y2 軸のラベルを持つ軸線を作成します。また、上側と右側の軸を非表示にし、y = 0 のときに x 軸線を表示する方法も学びます。
VM のヒント
VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。
時々、Jupyter Notebook が読み込み終了するまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。
学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。
ライブラリのインポート
必要なライブラリをインポートして始めます。Matplotlib とmpl_toolkits.axisartist.axislinesライブラリを使用します。
import matplotlib.pyplot as plt
from mpl_toolkits.axisartist.axislines import AxesZero
グラフとサブプロットの作成
次に、グラフを作成し、AxesZero を使ってサブプロットを追加します。これにより、x 軸と y 軸のラベル付きの軸線が作成されますが、目盛りやグリッドはありません。
fig = plt.figure()
fig.subplots_adjust(right=0.85)
ax = fig.add_subplot(axes_class=AxesZero)
上側と右側の軸を非表示にする
ここでは、左側と下側の軸のみが必要なので、上側と右側の軸を非表示にします。
ax.axis["right"].set_visible(False)
ax.axis["top"].set_visible(False)
y = 0 のときに x 軸線を表示する
ここでは、y = 0 のときに x 軸線を表示します。これは、xzero 軸を表示可能にすることで行われます。
ax.axis["xzero"].set_visible(True)
ax.axis["xzero"].label.set_text("Axis Zero")
軸の範囲とラベルを設定する
ここでは、y 軸の範囲を (-2, 4) に設定し、x 軸と y 軸のラベルを設定します。
ax.set_ylim(-2, 4)
ax.set_xlabel("Label X")
ax.set_ylabel("Label Y")
Y2 軸を作成する
最後に、グラフの右側にオフセット (20, 0) で新しい y2 軸を作成し、それにラベルを付けます。
ax.axis["right2"] = ax.new_fixed_axis(loc="right", offset=(20, 0))
ax.axis["right2"].label.set_text("Label Y2")
まとめ
Matplotlib を使って簡単な軸線を作成する方法を学びました。まず必要なライブラリをインポートし、次に AxesZero を使ってグラフとサブプロットを作成しました。その後、上側と右側の軸を非表示にし、y = 0 のときに x 軸線を表示し、軸の範囲とラベルを設定し、最後にグラフの右側に新しい y2 軸を作成しました。