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

MatplotlibでFigureからカラーバーのインスタンスを取得する方法

概要

MatplotlibでFigureからカラーバーのインスタンスを取得するには、imshow()が返すScalarMappableオブジェクトをcolorbar()メソッドに渡します。これにより、戻り値としてカラーバーのインスタンスを受け取ることができます。

手順

  • -1〜1の範囲の値を持つ10×10のランダムな配列データを生成します。

  • imshow()メソッドを使用して、データを2次元の正規ラスタ(画像)として表示します。

  • imshow()が返すScalarMappableインスタンスをcolorbar()に渡し、カラーバーを作成すると同時にそのインスタンスを取得します。

  • show()メソッドを使用して図を表示します。

サンプルコード

import numpy as np
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
data = np.random.randint(-1, 1, (10, 10))
im = plt.imshow(data, interpolation="nearest")
cbar = plt.colorbar(im)
plt.show()

出力結果

MatplotlibでFigureからカラーバーのインスタンスを取得する方法

上記のコードを実行すると、ランダムに生成されたデータが画像として表示され、その右側に対応するカラーバーが自動的に描画されます。変数cbarにはカラーバーのインスタンスが格納されているため、後からラベルの追加や色の範囲(vmin・vmax)の変更など、さまざまなカスタマイズを行うことが可能です。

  1. MatplotlibでHTTP URLからリモート画像を読み込んで表示する方法

    HTTP URL上にあるリモート画像をMatplotlibでプロットしたい場合、scikit-image(skimage)が提供するio.imread()メソッドを使うと、URLを直接指定して画像を読み込むことができます。以下の手順で実装してみましょう。実装手順図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。HTTP URLから画像データを読み込みます。imshow()メソッドを使い、読み込んだデータを2Dラスタ画像として表示します。axis(off)で軸を非表示にし、画像だけをきれいに見せます。show()メソッドを呼び出して図を表示します。コード例from s

  2. MatplotlibでRectangle(長方形)に色を設定する方法

    Matplotlibで長方形(Rectangle)に色を設定するには、以下の手順に従います。手順figure() メソッドを使用して、新しい図(Figure)を作成するか、既存の図をアクティブにします。add_subplot() メソッドを使用して、サブプロット構成の一部として図に ~.axes.Axes を追加します。長方形は、アンカーポイント(基準座標)と幅・高さを指定することで定義できます。作成したRectangleパッチを add_patch() でプロットに追加します。xlim() および ylim() メソッドを使用して、x軸とy軸の表示範囲を設定します。図を表示するには、show