heat map(熱圖)一詞相信大家肯定不會(huì)陌生,在很多重量級(jí)科學(xué)論文中非常常見。使用heat map可以容易展示多組分之間關(guān)系或相關(guān)性,也能展示基因表達(dá)前后差異。heat map其實(shí)還蘊(yùn)含不少分析的秘訣,這么高大上的heat map是怎樣實(shí)現(xiàn)的呢?
熱圖的應(yīng)用性很廣,在介紹熱圖繪制工具之前,小編先給大家科普科普,講講有關(guān)熱圖的基本概念、歷史、用途。
Heat map的基本概念
Heatmap是熱圖,也叫熱力圖,可以用顏色變化來反映二維矩陣或表格中的數(shù)據(jù)信息,可以直觀地將數(shù)據(jù)值的大小以定義的顏色深淺表示出來。熱圖使復(fù)雜的數(shù)據(jù)可視化和一目了然。通常根據(jù)需要將數(shù)據(jù)進(jìn)行物種或樣品間豐度相似性聚類,將聚類后數(shù)據(jù)表示在熱圖上,可將高豐度和低豐度的物種分塊聚集,通過顏色梯度及相似程度來反映多個(gè)樣品在各分類水平上群落組成的相似性和差異性。結(jié)果可有彩虹色和黑紅色兩種選擇。
熱圖有兩類:集群熱圖(cluster heat map)和空間熱圖(spatial heat map)。在集群熱圖里,圖片大小固定在單元格里,制定成一個(gè)包含行和列的矩陣。單元格大小是可任意調(diào)節(jié)。而在空間熱圖里,在一個(gè)空間里大小和位置都固定好的。
Heatmap的生成原理可以這樣概括,先為離散點(diǎn)設(shè)定一個(gè)半徑,創(chuàng)建一個(gè)緩沖區(qū);再對(duì)每個(gè)離散點(diǎn)的緩沖區(qū),使用漸進(jìn)的灰度帶(完整的灰度帶是0-255),從內(nèi)至外、從淺至深填充;因?yàn)榛叶戎悼梢辕B加,數(shù)值越大則顏色越深,在灰度帶中顯得越白。實(shí)際上可選擇ARGB模型中任一通道作為疊加灰度值,從而對(duì)于有緩沖區(qū)交叉的區(qū)域,可疊加灰度值,因而緩沖區(qū)交叉的越多,灰度值越大,這塊區(qū)域越“熱”。最后,用疊加后的灰度值為索引,從一條有256色的色帶中映射顏色,并對(duì)顏色重新著色,從而實(shí)現(xiàn)熱圖。

灰度帶

彩色帶
熱圖的歷史
熱圖其實(shí)并不是一種新的概念,可以追溯到19世紀(jì)。
熱圖起源于數(shù)據(jù)矩陣中二維數(shù)值的顯示。較大的數(shù)值用較小的深灰色或黑色方塊(像素)表示。在1873年Lona就使用了陰影矩陣將巴黎各區(qū)的社會(huì)上統(tǒng)計(jì)數(shù)據(jù)實(shí)現(xiàn)了可視化。在1957年Sneath展示了聚類分析的結(jié)果,通過對(duì)矩陣的行和列進(jìn)行置換,根據(jù)聚類將相似數(shù)值放置在彼此的附近。之后Jacques Bertin使用了類似方法顯示出符合格特曼尺度的數(shù)據(jù),他將集群樹連接到數(shù)據(jù)矩陣的行和列,這一想法來自于1973年Robert?Ling。Robert?Ling使用了打印機(jī)的字符來表示不同灰度,即一個(gè)像素就有一個(gè)字符寬度。在1994年Leland?Wilkinson開發(fā)了第一個(gè)計(jì)算機(jī)程序(SYSTAT),用于制作高分辨率彩色圖形的集群熱圖。在1991年,軟件設(shè)計(jì)師Cormac Kinney注冊(cè)了“heatmap”商標(biāo),發(fā)明了一種用2D圖形顯示實(shí)時(shí)金融市場(chǎng)信息的工具。如今,熱圖仍然可以手工形式、Excel電子表格或使用像Hotjar這樣的專業(yè)軟件創(chuàng)建。
熱圖的4種類型
第一種,生物學(xué)熱圖,通常用在分子生物學(xué)范疇,可以顯示從DNA微陣列獲得的大量可比較樣本(不同狀態(tài)下的細(xì)胞、不同患者的樣本)中的很多基因的表達(dá)水平。
第二種,樹形圖,是數(shù)據(jù)的2D分層分區(qū),在視覺上類似于熱圖。
第三種,馬賽克圖,是一種平鋪熱圖,用于表示雙向或更高方式的數(shù)據(jù)表,與樹形圖一樣,鑲嵌在圖中的矩形區(qū)域是分層組成。意味著這些區(qū)域是矩形。
第四種,密度函數(shù)可視化圖,用來表示出圖中點(diǎn)密度的熱圖,使人們能夠獨(dú)立在變焦參數(shù)感知點(diǎn)的密度。在2015年P(guān)errot等人提出的一種方法,通過使用Spark和Hadoop等大數(shù)據(jù)基礎(chǔ)設(shè)備,利用密度函數(shù)可看到幾十億個(gè)點(diǎn)。
熱圖在各個(gè)領(lǐng)域內(nèi)的用途
熱圖通過眾多數(shù)據(jù)點(diǎn)信息,匯聚成直觀可視化顏色效果,至今熱圖被廣泛應(yīng)用在不同領(lǐng)域和范疇,比如氣象預(yù)報(bào)、醫(yī)療成像、機(jī)房溫度等,甚至應(yīng)用于競技體育領(lǐng)域的數(shù)據(jù)分析。
觀看一場(chǎng)世界杯足球競賽時(shí),評(píng)委們通常利用熱圖了解到champion隊(duì)伍中門將、后衛(wèi)、中場(chǎng)和前鋒的跑位,讓我們一目了然地看到多名球員在比賽中跑位的差異。

氣象局還可利用熱圖判斷地震震源位置,可清楚看出哪些地方是地震高發(fā)區(qū)(頻率最高)。

還可結(jié)合百度地圖和熱圖,就可利用熱圖看到金融商圈,將商家的坐標(biāo)采集下來,根據(jù)坐標(biāo)點(diǎn)進(jìn)行聚類。看下面這張圖,紅色表示商家較多的地方,我們就可知道哪些是金融商圈。

那么,在生物學(xué)領(lǐng)域上熱圖提供什么用處呢?
熱圖經(jīng)常用于展示多個(gè)基因在不同樣本的表達(dá)水平,然后通過聚類等方式查看實(shí)驗(yàn)組和對(duì)照組特有的方式。

如上圖所示,每一列代表一個(gè)樣本,每一行代表一個(gè)基因,顏色代表表達(dá)量(這張圖的圖例看出,顏色越偏紅色,數(shù)值越大,基因表達(dá)量越高)。
熱圖還可用于展示其他物質(zhì)的豐度,如某細(xì)菌的相對(duì)豐度、代謝組不同物質(zhì)的含量。當(dāng)然熱圖還有一個(gè)重要的用處是展現(xiàn)出不同指標(biāo)、不同樣本等之間的相關(guān)性。

以上這圖就是相關(guān)性熱圖,顏色深淺代表著相關(guān)系數(shù)的大小,越接近白色說明相關(guān)性越弱,偏藍(lán)(負(fù)相關(guān))或偏紅(正相關(guān)),顏色越淺說明相關(guān)性越弱。在相關(guān)性計(jì)算中除了相關(guān)系數(shù)外,我們還看到p值是否顯著。如果把P值表示出來,可以在方格內(nèi)加入*號(hào)或具體數(shù)值。但是由于我們?cè)谏蠄D看到不同的兩個(gè)指標(biāo)之間的關(guān)系是被重復(fù)展現(xiàn)2次,所以有時(shí)候我們只需展現(xiàn)一半(對(duì)角線以上或以下)的一半圖形就夠了。就像下圖所示:

好了,這篇就講到這里,下一篇將為你揭曉更多有關(guān)熱圖的奧秘。