Python でヒート マップを簡単に作成する方法
5 週間にわたって特定の店舗で曜日ごとに行われた販売数を表示する、Python の次のデータセットがあるとします。
import numpy as np import pandas as pd import seaborn as sns #create a dataset np.random.seed(0) data = {'day': np.tile(['Mon', 'Tue', 'Wed', 'Thur', 'Fri'], 5), 'week': np.repeat([1, 2, 3, 4, 5], 5), 'sales': np.random.randint(0, 50, size=25) } df = pd.DataFrame(data,columns=['day','week','sales']) df = df.pivot('day', 'week', 'sales') view first ten rows of dataset df[:10] week 1 2 3 4 5 day Fri 3 36 12 46 13 My 44 39 23 1 24 Thursday 3 21 24 23 25 Kills 47 9 6 38 17 Wed 0 19 24 39 37
基本的なヒート マップを作成する
ns.heatmap()関数を使用して基本的なヒートマップを作成できます。
sns.heatmap(df)
右側のカラーバーには、さまざまな色で表される値を示す凡例が表示されます。
ヒートマップにラインを追加する
linewidths引数を使用して、ヒートマップの正方形の間に線を追加できます。
sns.heatmap(df, linewidths=.5)
ヒート マップに注釈を追加する
annot=True引数を使用してヒートマップに注釈を追加することもできます。
sns.heatmap(df, linewidths=.5, annot=True)
ヒートマップのカラーバーを非表示にする
cbar=Falseオプションを使用して、カラー バーを完全に非表示にすることもできます。
sns.heatmap(df, linewidths=.5, annot=True, cbar=False)
ヒートマップのカラーテーマを変更する
cmap引数を使用してカラーテーマを変更することもできます。たとえば、色を黄色、緑、青の範囲に設定できます。
sns.heatmap(df, cmap='YlGnBu')
または、色を赤から青にすることもできます。
sns.heatmap(df, cmap='RdBu')
カラー パレットの完全なリストについては、 matplotlib ドキュメントを参照してください。