Matplotlibの等高線図に軸線や原点を描画する方法
Matplotlibで等高線図を描画する際、グラフ上に軸線や原点(x=0、y=0)を明示したいケースがあります。本記事では、contourf()メソッドで等高線図を作成し、axhline()でy=0の水平線、axvline()でx=0の垂直線を重ねて描画する方法を解説します。
実装の手順
numpyを使用して、x、y、zのデータポイントを作成します。
plt.axis('off')メソッドを使って、デフォルトの軸を非表示に設定します。
contourf()メソッドにx、y、zのデータポイントを渡して、塗りつぶし等高線図を描画します。
x=0とy=0の線を赤色でプロットします。
show()メソッドで図を画面に表示します。
サンプルコード
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
x = np.linspace(-1.0, 1.0, 10)
x, y = np.meshgrid(x, x)
z = -np.hypot(x, y)
plt.axis('off')
plt.contourf(x, y, z, 10)
plt.axhline(0, color='red')
plt.axvline(0, color='red')
plt.show()
実行結果
上記のコードを実行すると、赤色の水平線(y=0)と垂直線(x=0)が等高線図の原点位置に交差して表示されます。axhline()とaxvline()は引数に座標値と色を指定できるため、任意の位置に参照線を追加したい場合にも応用できます。データの中心や基準となる値を視覚的に強調したいときに便利なテクニックです。
-
Matplotlibでプロット上のグリッドサイズを定義する方法
Matplotlib を使ってプロット上にグリッド(格子線)を表示し、その間隔(サイズ)を自由に定義する方法を紹介します。基本的な流れは以下の手順のとおりです。 グリッドサイズを定義する手順 figure() メソッドを使って、新しい図(Figure)を作成するか、既存の図をアクティブにします。 サブプロット配置の一部として、add_subplot() で図に Axes(座標軸)を追加します。 入力リストを渡して曲線をプロットします。 margins() メソッドで x 軸・y 軸のマージンを 0 に設定します。 X 軸のグリッド位置を指定するには、set_ticks() に目盛りの座標
-
Matplotlibでhist2dプロットにカラーバーを追加する方法
Matplotlibのhist2dプロット(2次元ヒストグラム)にカラーバーを追加するには、colorbar()メソッドの引数にスカラーマッピング可能なオブジェクト(ScalarMappable)を渡します。 実装手順 NumPyを使ってxとyのデータポイントを作成します。 subplots()メソッドを使って、図とサブプロットを作成します。 hist2d()メソッドを使って、2次元ヒストグラムを描画します。 hist2dから返されるスカラーマッピングオブジェクトをもとに、colorbar()でカラーバーを作成します。 show()メソッドを使って、図を表示します。 コード例 import