Python
 Computer >> コンピューター >  >> プログラミング >> Python

Matplotlibでプロット上のグリッドサイズを定義する方法


Matplotlib を使ってプロット上にグリッド(格子線)を表示し、その間隔(サイズ)を自由に定義する方法を紹介します。基本的な流れは以下の手順のとおりです。

グリッドサイズを定義する手順

  • figure() メソッドを使って、新しい図(Figure)を作成するか、既存の図をアクティブにします。
  • サブプロット配置の一部として、add_subplot() で図に Axes(座標軸)を追加します。
  • 入力リストを渡して曲線をプロットします。
  • margins() メソッドで x 軸・y 軸のマージンを 0 に設定します。
  • X 軸のグリッド位置を指定するには、set_ticks() に目盛りの座標リストを渡します。
  • 現在の線スタイルでグリッド線を描画するには、grid(True) メソッドを呼び出します。
  • 最後に show() メソッドで図を表示します。

コード例

from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot([0, 2, 5, 8, 10, 1, 3, 14], 'ro-')
ax.margins(x=0, y=0)
grid_points = [1., 2., 3., 10.]
ax.xaxis.set_ticks(grid_points)
ax.grid(True)
plt.show()

実行結果

Matplotlibでプロット上のグリッドサイズを定義する方法

コードのポイント

このサンプルでは、7.00 × 3.50 インチの図を作成し、赤い丸マーカー付きの折れ線('ro-')をプロットしています。ax.margins(x=0, y=0) を指定することでプロット領域の余白がなくなり、データがグラフの端まで描画されます。

グリッドの位置は grid_points = [1., 2., 3., 10.] のリストで定義されており、ax.xaxis.set_ticks() によって X 軸の目盛りとして設定されます。グリッド線はこの目盛りの位置にのみ引かれるため、等間隔に限らず任意の位置・間隔でグリッドを配置できるのが特徴です。Y 軸にも同じように設定したい場合は、ax.yaxis.set_ticks() を使用してください。

  1. Matplotlibで3Dプロットのアスペクト比を設定する方法

    Matplotlibで3Dプロットのアスペクト比を設定するには、set_aspect()メソッドを使用します。ここでは、曲面プロット(サーフェスプロット)を例に、具体的な手順とサンプルコードを解説します。 3Dプロットのアスペクト比を設定する手順 以下の手順に従って実装します。 figure()メソッドで新しい図を作成するか、既存の図をアクティブにします。 projection=3d を指定して現在のAxes(座標軸)を取得します。存在しない場合は自動的に作成されます。 numpyを使ってデータ点 R、Y、z を生成します。 R、Y、zをもとにサーフェスプロット(曲面図)を作成します。 s

  2. MatplotlibでSeabornプロットの凡例(レジェンド)のフォントサイズを大きくする方法

    Seabornプロットの凡例(レジェンド)のフォントサイズを大きくしたい場合は、fontsize変数を定義し、それをlegend()メソッドの引数として渡すことで実現できます。手順Pandasを使ってデータフレームを作成します。キーは「number」「count」「select」とします。Seabornのbarplot()メソッドを使って棒グラフを描画します。凡例のフォントサイズを大きくするための変数fontsizeを初期化します。legend()メソッドを使い、fontsizeを引数に指定して図上に凡例を配置します。図を表示するには、show()メソッドを使用します。サンプルコードimpor