目次
概要
matplotlib の pcolormesh でメッシュを描画する方法を解説します。
matplotlib.pyplot.pcolormesh
引数
名前 | 型 | デフォルト値 |
---|---|---|
C | array-like | |
2次元の配列。カラーマップにより、この値が色に変換されます。 | ||
X, Y | array-like | |
四角形の四隅の座標。 | ||
cmap | str or Colormap | None |
Colormap オブジェクトまたは登録されたカラーマップの名前。カラーマップは、C の値を色に変換します。None の場合、rcParams[“image.cmap”] (“viridis”)。 | ||
norm | Normalize | None |
Normalize オブジェクトは、C の値をカラーマップの範囲 [0, 1] に正規化します。 | ||
vmin, vmax | scalar | |
カラーバーの範囲を指定します。 | ||
edgecolors | {‘none’, None, ‘face’, color, color sequence} | |
メッシュの枠線の色。None の場合、rcParams[“patch.edgecolor”] (black)。 | ||
alpha | scalar | None |
透過度を [0, 1] の範囲で指定します。None の場合、1 (透過なし)。 | ||
shading | {‘flat’, ‘gouraud’} | ‘flat’ |
メッシュの塗りつぶし方法を指定します。 | ||
snap | bool | |
メッシュをピクセル境界にスナップするかどうかを指定します。 |
X, Y, C の指定方法
C
にメッシュの値、X
にメッシュの四隅の 座標、Y
にメッシュの四隅の 座標を指定します。
指定方法は次の3種類があります。
X, Y
を形状が (M, N) の2次元配列、C
を形状が (M – 1, N – 1) の2次元配列で指定する
この場合、各メッシュの情報は以下のように解釈されます。
In [1]:
X: shape=(5, 6) [[0 0 0 0 0 0] [1 1 1 1 1 1] [2 2 2 2 2 2] [3 3 3 3 3 3] [4 4 4 4 4 4]] Y: shape=(5, 6) [[0 1 2 3 4 5] [0 1 2 3 4 5] [0 1 2 3 4 5] [0 1 2 3 4 5] [0 1 2 3 4 5]] C: shape=(4, 5) [[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14] [15 16 17 18 19]]
X, Y, C
を形状が (M, N) の2次元配列で指定する
この場合、C
の最後の行、列は無視されます。
In [2]:
X: shape=(5, 5) [[0 0 0 0 0] [1 1 1 1 1] [2 2 2 2 2] [3 3 3 3 3] [4 4 4 4 4]] Y: shape=(5, 5) [[0 1 2 3 4] [0 1 2 3 4] [0 1 2 3 4] [0 1 2 3 4] [0 1 2 3 4]] C: shape=(5, 5) [[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14] [15 16 17 18 19] [20 21 22 23 24]]
X
を形状が (N,) の1次元配列、Y
を形状が (M,) の1次元配列、C
を形状が (M – 1, N – 1) の2次元配列で指定する
この場合、X, Y
に指定した1次元配列から各メッシュの四隅の座標が生成されます。
In [3]:
X: shape=(6,) [0 1 2 3 4 5] Y: shape=(5,) [0 1 2 3 4] C: shape=(4, 5) [[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14] [15 16 17 18 19]]
cmap – カラーマップを設定する
cmap
で適用するカラーマップを指定します。
In [4]:
edgecolors – メッシュの枠線の色を設定する
edgecolors
でメッシュの枠線の色を指定します。
- “none”: 枠線なし
- “face”: メッシュの色と同じ色
- Color: 単一の色
In [5]:
alpha – 透過度を設定する
alpha
でメッシュの透過度を指定します。
In [6]:
shading – メッシュの塗りつぶし方法を設定する
shading
でメッシュの塗りつぶし方法を指定します。
- “flat”: 単一の色で設定する
C
に指定した各メッシュの色で塗りつぶされます。
In [7]:
- “gouraud”: グーローシェーディングで塗りつぶす
各メッシュはグーローシェーディング (Gouraud shading) で塗りつぶされます。
shade="gouraud"
を指定した場合、C
の値は X, Y
で指定した各頂点の色を表すので、X, Y, Z
はすべて同じ形状でなければなりません。
In [8]:
コメント