Python MatplotlibでY軸の値(目盛りラベル)を指定する方法
PythonのMatplotlibでは、yticks()メソッドを使うことで、Y軸に表示する値や目盛りラベルを自由に指定できます。X軸の場合はxticks()を使用します。この記事では、具体的な手順とサンプルコードを通して、軸の目盛りをカスタマイズする方法を解説します。
Y軸の値を指定する手順
以下の手順で、Matplotlibのグラフに任意の目盛りラベルを設定できます。
- numpyを使ってxおよびyのデータポイントを作成します。
- 軸に表示したい値として、文字列のリストを作成します。
- xticks()メソッドとyticks()メソッドを使用し、それぞれX軸・Y軸の目盛りの位置とラベルを指定します。
- plot()メソッドでxとyのデータをプロットします(例:色を指定)。
- margins()メソッドで、X軸とY軸の余白を0に設定します。
- show()メソッドで図を表示します。
サンプルコード
import numpy as np from matplotlib import pyplot as plt # 図のサイズとレイアウトを設定 plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True # データポイントを作成 x = np.array([0, 2, 4, 6]) y = np.array([1, 3, 5, 7]) # 目盛りラベルとして使う文字列のリスト ticks = ['a', 'b', 'c', 'd'] # X軸・Y軸の目盛り位置とラベルを指定 plt.xticks(x, ticks) plt.yticks(y, ticks) # 線グラフを描画 plt.plot(x, y, c='green') # 軸の余白を0に設定 plt.margins(x=0, y=0) plt.show()
コードの解説
このサンプルコードでは、まずnumpyの配列でデータポイント x = [0, 2, 4, 6] と y = [1, 3, 5, 7] を定義しています。次に、目盛りラベルとして使用する文字列リスト ticks = ['a', 'b', 'c', 'd'] を作成します。
plt.xticks(x, ticks) により、X軸上の位置 [0, 2, 4, 6] にそれぞれ「a」「b」「c」「d」というラベルが表示されます。同様に、plt.yticks(y, ticks) により、Y軸上の位置 [1, 3, 5, 7] にも同じラベルが割り当てられます。
これにより、数値の代わりに任意の文字列を目盛りラベルとして表示できるため、カテゴリーデータの可視化などにも活用できます。plt.margins(x=0, y=0) を指定することで、グラフの端に余白ができず、データポイントが図の端までしっかりと表示されます。
実行結果
このコードを実行すると、緑色の線グラフが描画され、X軸とY軸の両方に「a」「b」「c」「d」のラベルが目盛りとして表示された図が出力されます。

-
Python Matplotlibで単一のポイント(点)をプロットする方法
Matplotlibを使えば、たった1つのデータポイントでも簡単にグラフ上へプロットできます。ここでは、単一の点をプロットするための基本的な手順を解説します。 単一ポイントをプロットする手順 x と y のリストを、単一の値で初期化します。 plt.xlim() および plt.ylim() を使って、X軸・Y軸の表示範囲を0〜5に設定します。 plt.grid() を呼び出して、現在の線スタイルでグリッドを描画します。 plot() メソッドでxとyをプロットし、marker=o、markeredgecolor=red、markerfacecolor=green を指定してマーカーの見た目
-
【Python】matplotlibでフォントサイズを変更する方法をわかりやすく解説
Pythonの可視化ライブラリ「matplotlib」では、plt.text()メソッドを使うことで、グラフ内に表示するテキストのフォントサイズを簡単に変更できます。この記事では、具体的な手順とサンプルコードを交えて解説します。 フォントサイズを変更する手順 グラフを作成する:plt.plot()メソッドの引数に2つのリストを渡すことで、折れ線グラフを作成できます。 テキストを追加する:plt.text()メソッドを使い、データ座標上の位置 (x, y) にテキストを配置します。fontsize引数の値を変更することで、フォントサイズを自由にカスタマイズできます。 グラフを表示する:plt.