MatplotlibでY軸の目盛り(ティック)の表示間隔を調整する方法
Matplotlibでは、デフォルトのY軸の目盛り(ティック)は自動的に配置されますが、グラフを見やすくするために、目盛りの表示間隔(頻度)を自分で調整したい場合があります。そのようなときは、yticks()メソッドとnumpy.arange()を組み合わせることで、簡単に制御できます。
Y軸の目盛り間隔を調整する手順
- 図のサイズを設定し、サブプロット間および周囲のパディングを調整します。
- サンプルデータの点数を表す変数 N を初期化します。
- numpy を使って x と y のデータ点を作成します。
- plot() メソッドを使って x と y のデータ点をプロットします。
- Y軸の目盛りの間隔を指定するための変数 freq_y を初期化します。
- yticks() メソッドを使って、Y軸の目盛りの位置を設定します。
- show() メソッドで図を表示します。
コード例
import matplotlib.pyplot as plt import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True N = 10 x = np.random.randint(low=0, high=N, size=N) y = np.random.randint(low=0, high=N, size=N) plt.plot(x, y, color='red') # Y軸の目盛りを3刻みで表示 freq_y = 3 plt.yticks(np.arange(0, N, freq_y)) plt.show()
コードの解説
この例では、0から9までの範囲でランダムな整数データを生成し、赤色の折れ線グラフとして描画しています。ポイントとなるのは次の行です。
plt.yticks(np.arange(0, N, freq_y))
np.arange(0, N, freq_y) は「0以上、N未満の範囲で、freq_y 刻み」の配列を生成します。つまり、freq_y = 3 の場合は 0, 3, 6, 9 の4つの位置にのみ目盛りが表示されます。この値を変更すれば、目盛りの密度を自由に調整できます。たとえば freq_y = 1 にするとすべての整数位置に目盛りが付き、freq_y = 5 にするとより粗い間隔になります。
実行結果


同様にX軸の目盛りを調整したい場合は、xticks() メソッドを使うことで同じ要領で制御できます。また、対数目盛りや日付軸など、より高度な軸のカスタマイズが必要な場合は、MultipleLocator や FuncFormatter などの matplotlib.ticker モジュールを活用すると便利です。
-
Matplotlibでhist2dプロットにカラーバーを追加する方法
Matplotlibのhist2dプロット(2次元ヒストグラム)にカラーバーを追加するには、colorbar()メソッドの引数にスカラーマッピング可能なオブジェクト(ScalarMappable)を渡します。 実装手順 NumPyを使ってxとyのデータポイントを作成します。 subplots()メソッドを使って、図とサブプロットを作成します。 hist2d()メソッドを使って、2次元ヒストグラムを描画します。 hist2dから返されるスカラーマッピングオブジェクトをもとに、colorbar()でカラーバーを作成します。 show()メソッドを使って、図を表示します。 コード例 import
-
Python MatplotlibでY軸の値(目盛りラベル)を指定する方法
PythonのMatplotlibでは、yticks()メソッドを使うことで、Y軸に表示する値や目盛りラベルを自由に指定できます。X軸の場合はxticks()を使用します。この記事では、具体的な手順とサンプルコードを通して、軸の目盛りをカスタマイズする方法を解説します。 Y軸の値を指定する手順 以下の手順で、Matplotlibのグラフに任意の目盛りラベルを設定できます。 numpyを使ってxおよびyのデータポイントを作成します。 軸に表示したい値として、文字列のリストを作成します。 xticks()メソッドとyticks()メソッドを使用し、それぞれX軸・Y軸の目盛りの位置とラベルを指定し