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

Seabornのヒートマップで注釈の表示形式を指定する方法

Seabornのヒートマップでは、fmtパラメータを使うことで、セル内に表示される注釈(annotation)の数値フォーマットを自由にカスタマイズできます。ここでは、注釈をパーセント形式で表示する方法を、具体的な手順とともに解説します。

実装の手順

  • 図のサイズを設定し、サブプロット間および周囲の余白を調整します。
  • Pandasのデータフレームを作成します。今回は5列のデータを使用します。
  • データを色分けされた行列として可視化します。fmt=".2%"を指定することで、注釈が小数点以下2桁のパーセント形式で表示されます。
  • show()メソッドを使って図を画面に表示します。

コード例

import seaborn as sns
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

df = pd.DataFrame(np.random.random((5, 5)), columns=["a", "b", "c", "d", "e"])

sns.heatmap(df, annot=True, annot_kws={"size": 7}, fmt=".2%")

plt.show()

コードのポイント解説

  • annot=True:各セルに数値を注釈として表示します。これを指定しないと数値は表示されません。
  • annot_kws={"size": 7}:注釈テキストのフォントサイズを7に設定しています。辞書形式で色や太字など他のスタイルも指定可能です。
  • fmt=".2%":注釈の書式を指定します。「.2%」は「小数点以下2桁のパーセント表示」を意味します。例えば0.5432という値は「54.32%」と表示されます。

fmtにはPythonの文字列フォーマット指定子がそのまま使えるため、例えば小数点以下1桁にしたい場合はfmt=".1f"、整数表示にしたい場合はfmt="d"などと指定できます。なお、fmt="d"を使う場合はデータが整数型である必要がある点に注意してください。

出力結果

Seabornのヒートマップで注釈の表示形式を指定する方法

このように、fmtパラメータを活用することで、ヒートマップ上の数値を見やすく整形でき、データの傾向をより直感的に把握できるようになります。

  1. SeabornでX軸の目盛り(x-ticks)の表示密度を減らす方法

    SeabornでX軸の目盛り(x-ticks)の表示密度を減らしたい場合、奇数番目の位置にあるラベルに対して set_visible(False) を設定する方法が有効です。この記事では、具体的な手順とサンプルコードをわかりやすく解説します。 手順 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。 X軸とY軸のキーを持つデータフレームを作成します。 barplot() メソッドを使用して、棒グラフで点推定値と信頼区間を表示します。 bar_plot.get_xticklabels() メソッドを反復処理し、index が偶数の場合はラベルを表示、奇数の場合は非表

  2. 【Matplotlib】アノテーション(テキスト)を回転させて線に一致させる方法

    Matplotlibでグラフ上のアノテーション(テキスト)を回転させ、直線の傾きに一致させる方法を解説します。ポイントは、直線の傾きから回転角度(theta)を計算し、text()メソッドのrotation引数に渡すことです。 実装の手順 figure()メソッドを使用して、新しい図を作成するか、既存の図をアクティブにします。 add_subplot()メソッドを使用して、サブプロットとしてAxesを図に追加します。 直線の傾きmと切片cの変数を初期化します。 NumPyを使用して、xおよびyのデータ点を作成します。 テキストの回転角を求めるためにthetaを計算します。 plot()メソ