


ヒートマップ(またはヒートマップ)は、データセット内の個々の値の大きさを色で表現する2次元のデータ可視化手法です。色の変化は、色相または強度によって表現されます。
犯罪分析やウェブサイトのクリック追跡などの一部のアプリケーションでは、各データポイントに関連付けられた値ではなく、データポイントの密度を表すために色が使用される。
「ヒートマップ」は比較的新しい用語ですが、行列をシェーディングする手法は1世紀以上前から存在しています。[ 1 ]
ヒートマップは、データ行列の値を 2 次元で表示したものが起源です。大きな値は小さな濃い灰色または黒の正方形 (ピクセル) で表され、小さな値はより明るい正方形で表されます。最も古い例は 1873 年にトゥーサン・ルアが手描きで色付けした陰影付き行列を使用してパリの各地区の社会統計を視覚化したことに遡ります。[ 1 ]データ行列の構造を明らかにするために行と列を並べ替えるというアイデアは、系列化として知られ、 1899 年にフリンダーズ・ペトリーによって導入されました。1950 年にルイ・ガットマンは、バイナリ行列を並べ替えて 1 次元のスケール構造を明らかにする方法であるスケーログラムを開発しました。1957 年にピーター・スニースは、クラスタリングに従って類似の値を互いに近くに配置するために行列の行と列を並べ替えることで、クラスタ分析の結果を表示しました。このアイデアは、1973 年にロバート・リングによって SHADE と呼ばれるコンピュータ プログラムで実装されました。リンは、異なる濃淡の灰色を表現するために、重ね打ちされたプリンタ文字を使用し、1ピクセルあたり1文字幅とした。[ 1 ]リーランド・ウィルキンソンは、 1994年に高解像度カラーグラフィックでクラスタヒートマップを作成する最初のコンピュータプログラム(SYSTAT)を開発した。図に示されているアイゼンらの表示は、以前のSYSTAT設計の複製である。[ 1 ]
ソフトウェアデザイナーのコーマック・キニーは、リアルタイムの金融市場情報を表示するために使用されるコンピュータソフトウェアを説明するために、1991年に「ヒートマップ」という用語を商標登録しました。[ 2 ] 1998年にこの商標はSS&C Technologies, Inc.に買収されましたが、同社はライセンスを延長しなかったため、2006年に無効となりました。[ 3 ]

ヒートマップには、空間ヒートマップとグリッドヒートマップという2つの主要なカテゴリがあります。さらに、10種類以上の異なるタイプのヒートマップが存在します。
空間ヒートマップは、空間現象の大きさを色で表現したもので、通常は地図上に重ねて表示されます。「空間ヒートマップの例」とラベル付けされた画像では、世界地図上に温度が色の範囲で表示されています。色は青(低温)から赤(高温)まで変化します。
グリッドヒートマップは、2次元マトリックスで大きさを色で表示します。各次元は特性のカテゴリを表し、色は2つのカテゴリそれぞれの複合特性の測定値の大きさを表します。たとえば、1つの次元が年を表し、もう1つの次元が月を表し、測定値が温度である場合、このヒートマップは各月の温度が年ごとにどのように変化したかを示します。グリッドヒートマップは、さらにクラスター型とコレログラム型の2種類のマトリックスに分類されます。
グリッドヒートマップでは、色が固定サイズのグリッド状に配置され、グリッド内のすべてのセルは同じサイズと形状になります。その目的は、クラスターを検出したり、クラスターの存在を示唆したりすることです。
空間ヒートマップは、地図や衛星画像(GISを参照)でよく使用されます。そこではセルの概念はなく、代わりに色が連続的に変化します。
ヒートマップは、データを簡素化し、視覚的に分かりやすいデータ分析を可能にするため、幅広い用途で活用できます。以下に、さまざまな種類のヒートマップを使用した多くのアプリケーションを紹介します。

ビジネス分析:ヒートマップは、企業の現状、業績、改善の必要性を視覚的に表現するために、ビジネス分析において用いられます。ヒートマップは、企業の既存データを分析し、成長やその他の具体的な取り組みを反映するように更新する手段です。ヒートマップは、企業や組織のチームメンバーや顧客にとって視覚的に分かりやすいツールです。
ウェブサイト:ウェブサイト内では、訪問者の行動を把握するためにヒートマップがさまざまな方法で使用されています。通常、複数のヒートマップを組み合わせて使用することで、ページ上で最もパフォーマンスの高い要素と低い要素を把握し、ウェブサイトに関する洞察を得ることができます。ウェブサイト分析に使用される具体的なヒートマップを以下に示します。


探索的データ分析: データサイエンティストとデータアナリストは、小規模および大規模なデータセットを扱い、データセット内のさまざまなポイント間の重要な関係と特性、およびそれらのデータポイントの特徴を調べて決定します。データサイエンティストとアナリストは、さまざまな専門分野の他のチームと協力して作業します。ヒートマップを使用すると、発見と主要なコンポーネントを視覚的に簡単に要約できます。データを表現する他の方法もありますが、ヒートマップは、コンパクトになりすぎて視覚的に魅力が損なわれることなく、これらのデータポイントとその関係を高次元空間で視覚化できます。データ分析のヒートマップでは、軸上の行および/または列、さらには対角線上の特定の変数を使用できます。
生物学:生物学分野では、ヒートマップは大小さまざまなデータセットを視覚的に表現するために使用されます。焦点は、DNA、RNA、遺伝子発現などのパターンと類似性にあります。バイオインフォマティクスのデータサイエンティストは、これらのデータセットを扱う際に、コミュニティ検出、関連性と相関、中心性の概念など、さまざまな概念に焦点を当てます。ヒートマップは、結果を視覚的に要約し、生物学やバイオインフォマティクス以外の分野の専門家と共有するための説得力のある方法です。右側の「データ分析ヒートマップの例」とラベル付けされた 2 つのヒートマップは、生物学分野以外の人が生物学者やデータサイエンティストが提示しようとしている一般的な概念をよりよく理解できるように、特定の領域 ( Hist1領域) のゲノムデータを提示するさまざまな方法を示しています。[ 5 ]
財務分析:さまざまな製品や資産の価値は、時間の経過とともに急速または緩やかに変動します。日々の市場の変化を記録する必要性は不可欠です。これにより、パターンから予測を導き出すことができ、過去の数値データを再検討することもできます。ヒートマップは、面倒なプロセスを排除し、ユーザーがデータポイントを視覚化してさまざまなパフォーマンスを比較できるようにします。[ 6 ]
地理的可視化:ヒートマップは、データの地理的分布を視覚化して表示するために使用されます。ヒートマップは、地理的マップ上のデータポイントの密度の違いを表し、ユーザーが特定の現象の強度を把握したり、最も重要または最も重要でない項目を表示したりするのに役立ちます。地理的可視化で使用されるヒートマップは、コロプレスマップと混同されることがありますが、両者の違いは、特定のデータの表示方法にあります。[ 7 ]
スポーツ:ヒートマップは多くのスポーツで使用でき、表示されるデータの高密度と低密度に基づいて、監督やコーチの意思決定に影響を与えることができます。ユーザーは、試合内のパターン、対戦相手や自チームの戦略を特定し、選手、チーム、ビジネスに利益をもたらすより情報に基づいた意思決定を行い、改善が必要な箇所を特定することで、さまざまな分野でのパフォーマンスを向上させることができます。ヒートマップはまた、同じスポーツ内の異なるチーム間、または異なるスポーツ全体間の比較や関係を視覚化します。[ 6 ]
サイバーセキュリティ:侵入検知システムやログ分析では、ヒートマップを使用して異常なアクセスパターン、ポートスキャン試行、悪意のあるIPクラスタリングを強調表示します。これにより、SOC(セキュリティオペレーションセンター)のアナリストは、大規模なデータセット内の異常を迅速に特定できます。[ 8 ]
都市計画: ヒートマップは、データ駆動型のインフラ開発のために、交通渋滞、歩行者の流れ、環境条件を視覚化するために都市計画で使用されます (Batty et al., 2012)。環境ヒートマップは、大気質と都市ヒートアイランドを追跡し、緑地計画の指針となります (EEA, 2021)。騒音汚染ヒートマップは、住宅地付近のゾーニングと緩和に役立ちます (EEA, 2020)。商業プランナーは、歩行者交通ヒートマップを使用して、小売店のレイアウトを最適化します (SmartSantander, 2014)。スマートシティシステムに統合されたこれらのマップは、居住性、持続可能性、安全性を向上させます (Batty et al., 2012)。[ 9 ] [ 10 ] [ 11 ] [ 12 ]
ヒートマップの表示にはさまざまな配色を使用できますが、それぞれに知覚上の利点と欠点があります。適切な配色を選択することは、データを正確かつ効果的に表示するために不可欠ですが、不適切な配色では、視聴者が不正確な結論に至ったり、色覚異常のある人がデータの適切な分析から除外されたりする可能性があります。[ 13 ]

レインボーカラーマップはよく使われる選択肢ですが、アクセシビリティとデータの連続性の両方に問題があります。[ 14 ]レインボーマップは、特に赤と緑の区別に問題のある色覚異常のあるユーザーにとって課題となります。これは人口のかなりの割合に影響を与える症状です。[ 14 ]アクセシビリティの問題に加えて、レインボーヒートマップの色は知覚的に均一ではありません。データ値の等しい増加が、色の変化に等しく対応しません。[ 15 ]均一性の欠如は、人工的な境界線やグラデーションのような誤解を招く視覚効果を生み出す可能性があります。[ 15 ]これらの効果は、視覚化の正確性と有効性を損なう可能性があります。位相角を示す色を使用した振幅のこの例は、レインボーカラー全体で解釈するのが難しい場合があります。この場合、レインボーカラースキームは、色覚異常のある人の解釈を曇らせたり、図全体にわたるいくつかの明確な色の境界線によって混乱を引き起こしたりする可能性があります。[ 15 ]これらの課題に対処するため、視覚障害に対応し、データの違いに比例した一貫した色の違いを維持するために、知覚的に均一な色セットが作成されました。[ 16 ]

知覚的に均一な配色は、一貫した知覚的差異を維持し、色覚異常のある視聴者にとってより良い視聴体験を提供するように慎重に設計されています。これらの配色をヒートマップに実装する場合、設計者はデータのコンテキストと意図された強調を考慮する必要があります。これらの配色には、次の 3 つの主要なパターンがあります。連続グラデーション (単一の色相の強度の変化)、分岐パレット (中立的な中間点を持つ 2 つの対照的な色相)、およびカテゴリ データ用の定性的セット。[ 17 ]科学的視覚化では、均一性とアクセシビリティの両方の懸念に対処するいくつかの知覚的に均一なカラー セット (Viridis、Magma、Cividis など) が作成されています。[ 18 ]

デバイスの制限も、ヒートマップの視覚化効果に大きな影響を与える可能性があります。低解像度の画面で表示すると、非常に詳細なカラーグラデーションがピクセル化したり、縞模様になったりして、視覚化の品質が低下する場合があります。これはカラー量子化と呼ばれ、データの一部が不明瞭になったり、誤って強調されたりする可能性があります。これらの影響を軽減するために、設計者はヒートマップを表示するすべてのデバイスとその色の制限を考慮する必要があります。複数のデバイスタイプで表示されるヒートマップを作成する場合は、包括的なテストを実施し、色の少ない配色を使用するのが最も安全な方法です。

グレースケールとの互換性は、特に印刷媒体、白黒のみのディスプレイ、またはモノクロ視覚を考慮する場合、ヒートマップのアクセシビリティにとって不可欠です。グレースケールに変換すると、多くのカラースキームは特徴的なデータマッピングを失い、異なる値が輝度で同じに見えるようになります。グレースケール対応のカラースキームは、「virdis」ファミリーのように、色が削除された場合でもデータポイント間のコントラストを組み込むように設計されています。[ 18 ]

ヒートマップソフトウェアの実装例がいくつか無料で入手可能です。

imshow()関数は、2次元の数値配列を色分けされた画像として視覚化し、色のマッピングと軸を制御できます。[ 31 ]heatmap()関数は、最小限のコードで美的に洗練されたヒートマップを提供し、Pandas DataFramesでよく使用されます。[ 32 ]go.Heatmap()関数は、インタラクティブなHTMLベースのヒートマップを作成します。x軸とy軸のラベル、2Dマトリックス、カスタムカラースケール、詳細なホバー情報などが可能です。[ 33 ]
GraphicsContext.fillRect()およびColorクラスを使用すると、レンダリングを完全に制御できます。 [ 34 ]XYBlockRenderer、マトリックススタイルのデータのプロットに適しています。 [ 35 ]BufferedImageSwing GUIに埋め込むことができる画像を生成します。 [ 36 ]

地理的に視覚化されたデータを参照する場合、コロプレスマップとヒートマップはしばしば誤って混同して使用されます。[ 43 ]どちらの手法も関心のある変数の割合を示しますが、変数のデータ集計の境界の構築方法が異なります。行政単位などの不規則な境界を使用してデータが収集および集計された場合、そのデータを表示するヒートマップはコロプレスマップと同じになり、2つの違いについて混乱を招きます。
コロプレスマップは、国、州、県、あるいは氾濫原といった地理的な境界ごとにデータをグループ化して表示します。各地域には固有の値があり、色の濃淡やパターンによって視覚化されます。右の図は、アメリカ合衆国の州ごとの人口密度を示すコロプレスマップの例です。この図では、各州の境界で囲まれた領域に、他のすべての州の値に対する各州の値の比率に応じて青色の濃淡で表された固有の値(人口)が示されています。

同様に、ヒートマップも地理的領域にわたるデータを視覚化することができます。ただし、コロプレスマップとは異なり、ヒートマップは、地理的境界とは無関係に、任意の、しかし通常は小さなグリッドサイズにおける変数の割合を示します。[ 44 ] [ 45 ]右の図は、世界人口のヒートマップを表示した例です。この図は、任意のグリッド(平方キロメートル)で囲まれた単一の値(人口)を示しており、グリッド内の各セルは、他のすべてのセルに対するセルの値に比例した色の強度で表されます。近似的な地域データを使用して作成されたヒートマップの中には、実際には存在しない地理的境界が視覚化で表示されるものがあります。地理的境界の錯覚は、視覚化手法ではなく、データセット内のパターンの存在によるものです。右の図は、世界人口のヒートマップを表示していますが、この現象も含まれています。米国と南米の農村部の地域は、これらの地域の地理的境界に非常によく似ている場合があります。

地理的領域におけるヒートマップのもう一つの例は、2006年10月中旬のニューヨーク州バッファロー周辺の湖水効果雪の可視化です。この図は、地理的領域におけるヒートマップの別の使用例を示しており、国や州といった広域的な範囲ではなく、特定の地域における気象の影響を示す上で、ヒートマップがいかに有用であるかを示しています。