Matplotlibでヒートマップを作成しカスタマイズする方法

Matplotlibを使用してヒートマップを作成し、カスタマイズする方法について解説します。具体的なコード例とその詳細な解説、応用例を含めてご紹介します。

目次

Matplotlibとは

MatplotlibはPythonのデータ可視化ライブラリの一つであり、多様なチャートやグラフを作成することが可能です。ヒートマップもその一つで、2次元のデータ分布を色で表現する手法です。

基本的なヒートマップの作成

Matplotlibでヒートマップを作成する基本的な手法について解説します。

必要なライブラリのインポート

まずは、必要なライブラリをインポートします。

import matplotlib.pyplot as plt
import numpy as np

データの準備

次に、ヒートマップに表示するデータを準備します。ここでは、numpyを使用してランダムな2次元配列を作成します。

# 5x5のランダムな2次元配列を作成
data = np.random.rand(5, 5)

ヒートマップの描画

データが準備できたら、ヒートマップを描画します。

# ヒートマップを描画
plt.imshow(data, cmap='hot', interpolation='nearest')
plt.colorbar()
plt.show()

ヒートマップのカスタマイズ

基本的なヒートマップの作成方法を掴んだところで、次はカスタマイズについて解説します。

カラーマップの変更

Matplotlibでは多くのカラーマップが用意されています。`cmap`パラメータで指定できます。

# カラーマップを'coolwarm'に変更
plt.imshow(data, cmap='coolwarm', interpolation='nearest')
plt.colorbar()
plt.show()

値の範囲を指定する

`vmin`と`vmax`パラメータで値の範囲を指定することができます。

# 値の範囲を0.2から0.8に指定
plt.imshow(data, cmap='hot', interpolation='nearest', vmin=0.2, vmax=0.8)
plt.colorbar()
plt.show()

応用例

ここではヒートマップを更に応用する方法を2つ紹介します。

テキストを追加する

ヒートマップに値を表示する方法です。

# ヒートマップを描画
plt.imshow(data, cmap='hot', interpolation='nearest')
plt.colorbar()

# テキストを追加
for i in range(data.shape[0]):
    for j in range(data.shape[1]):
        plt.text(j, i, '{:.2f}'.format(data[i, j]), ha='center', va='center')

plt.show()

複数のヒートマップを並べる

複数のヒートマップを並べて表示する方法です。

# 3x3のサブプロットを作成
fig, axes = plt.subplots(3, 3)

# 各サブプロットにヒートマップを描画
for ax in axes.flat:
    ax.imshow(np.random.rand(5, 5), cmap='hot', interpolation='nearest')

plt.show()

まとめ

この記事では、Matplotlibで基本的なヒートマップを作成し、カスタマイズする方法を解説しました。特に、テキストの追加や複数のヒートマップを並べるなどの応用例も紹介しました。これらの知識を活用して、データの可視化に役立ててください。

コメント

コメントする

目次