はじめに
Matplotlib のグラフでは、目盛りは軸上のデータポイントの位置を示すために使用されます。主目盛りは、データポイントの値を表す大きな目盛りであり、副目盛りは、主目盛りの間に配置される小さな目盛りです。このチュートリアルでは、Matplotlib で主目盛りと副目盛りを使用する方法を示します。
VM のヒント
VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。
時々、Jupyter Notebook が読み込み終了するまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。
学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。
必要なライブラリをインポートしてデータを作成する
import matplotlib.pyplot as plt
import numpy as np
## Create data
t = np.arange(0.0, 100.0, 0.1)
s = np.sin(0.1 * np.pi * t) * np.exp(-t * 0.01)
まず、必要なライブラリ、つまり Matplotlib と NumPy をインポートします。そして、描画するデータを作成します。この例では、numpy 配列「t」を作成し、t を使って別の numpy 配列「s」を計算します。
データを描画する
fig, ax = plt.subplots()
ax.plot(t, s)
次に、グラフと軸のオブジェクトを作成し、軸上にデータを描画します。
主目盛りと副目盛りの設定
## Set the major locator
ax.xaxis.set_major_locator(MultipleLocator(20))
## Set the major formatter
ax.xaxis.set_major_formatter('{x:.0f}')
## Set the minor locator
ax.xaxis.set_minor_locator(MultipleLocator(5))
ここでは、主目盛りの位置を 20 の倍数で設定し、主目盛りを".0f"形式でラベル付けするための主目盛りのフォーマッタを設定し、副目盛りの位置を 5 の倍数で設定する副目盛りを設定します。
グラフを表示する
plt.show()
最後に、グラフを表示します。
主目盛りと副目盛りの自動目盛り選択
## Create data
t = np.arange(0.0, 100.0, 0.01)
s = np.sin(2 * np.pi * t) * np.exp(-t * 0.01)
## Plot the data
fig, ax = plt.subplots()
ax.plot(t, s)
## Set the minor locator
ax.xaxis.set_minor_locator(AutoMinorLocator())
## Set the tick parameters
ax.tick_params(which='both', width=2)
ax.tick_params(which='major', length=7)
ax.tick_params(which='minor', length=4, color='r')
## Display the plot
plt.show()
このステップでは、新しいデータを作成して描画します。その後、副目盛りの数を自動的に選択するように副目盛りを設定します。その後、主目盛りと副目盛りの両方に対して、目盛りの幅と長さ、およびそれらの色などの目盛りパラメータを設定します。最後に、グラフを表示します。
まとめ
このチュートリアルでは、Matplotlib で主目盛りと副目盛りを使用する方法を示しました。主目盛りと副目盛りの位置付けとフォーマッタを設定する方法、および副目盛りの数を自動的に選択する方法を見ました。また、目盛りの幅と長さ、およびそれらの色などの目盛りパラメータを設定する方法も見ました。