
Emmm, 今天的主圖,
寫在前面
博士畢業(yè)論文中,使用的樣品包括:
- 不同的類型 / 或者說(shuō)不同的組織
- 不同的時(shí)間 / 或者說(shuō)時(shí)間序列
所以,是一個(gè)多X多的設(shè)計(jì)。對(duì)于這類實(shí)驗(yàn)設(shè)計(jì)所產(chǎn)生的數(shù)據(jù),往往會(huì)有較高的分析難度。在分析上,現(xiàn)在多數(shù)人直接使用的是共表達(dá)網(wǎng)絡(luò)分析,最常用的莫過(guò)于 WGCNA 。而在可視化上,單單就基因表達(dá)熱圖繪制上,沒(méi)有較好的形式,尤其是在 多基因X多組織X多時(shí)期 的數(shù)據(jù)上。
TBtools中多種熱圖可視化方式
TBtools中,我們提供過(guò)數(shù)種熱圖的展示方式,
第一種,常規(guī)的熱圖,適用于 少基因X少樣品 的數(shù)據(jù)

這種熱圖,四四方方,其實(shí)在TBtools里面,可以有不少變化,比如不要用顏色對(duì)應(yīng)數(shù)值,直接用圈的大小來(lái)對(duì)應(yīng)數(shù)值

當(dāng)然還有其他,比如三角形的,或者前述我們推送過(guò)的對(duì)角線熱圖的熱圖組合方式。無(wú)論怎么可視化,這類熱圖能展示的表達(dá)矩陣,仍然很少。所以在基因數(shù)達(dá)到數(shù)十或者上百之后,TBtools中有提供了掰彎的熱圖或者說(shuō),環(huán)形熱圖。
第二種,環(huán)形的熱圖,適用于 多基因X少樣品 的數(shù)據(jù)
前前后后,我在公眾號(hào)上推 環(huán)形熱圖 有超過(guò)一年時(shí)間。目前市面上,我自認(rèn)為暫時(shí)就TBtools一個(gè)工具,也是第一個(gè),是以熱圖工具為中心開(kāi)發(fā)的環(huán)形熱圖,如果說(shuō)之前已經(jīng)有,那么那些都是以進(jìn)化樹(shù)注釋為中心開(kāi)發(fā)的。進(jìn)化樹(shù)注釋功能,TBtools也有,對(duì)應(yīng)的也有簡(jiǎn)單版本的熱圖Track【注:功能明顯有限】。如果說(shuō),還有其他工具可以做了,那么他們都只是追隨者。環(huán)形熱圖,最大的好處,就是可以容納比較多的基因,同時(shí)基本不占版面。
大體如下,

或者,換個(gè)配色可能好看點(diǎn)

第三種,卡通熱圖,適用于 少基因X多樣品 的數(shù)據(jù)
雖然掰彎的熱圖,其實(shí)把基因和樣品做一個(gè)轉(zhuǎn)置【注:TBtools的熱圖功能內(nèi)置矩陣轉(zhuǎn)置功能,也有專門的表格轉(zhuǎn)置功能】,就可以處理 少基因X多樣品 的情況。但是,當(dāng)樣品很多,或者比較復(fù)雜時(shí)。我們?nèi)祟惖闹庇^視覺(jué)可以幫我們更好的分析數(shù)據(jù)。為此,在多年前,有一個(gè)瀏覽器框架叫eFP Browser,針對(duì)芯片數(shù)據(jù)開(kāi)發(fā)。在前述,TBtools推出了基于FPKM的,支持矢量圖導(dǎo)入導(dǎo)出的FancyHeatmap。從比較多的方面有所超越。大體如下:

這種熱圖,最適合的是 可視化某個(gè)基因在多組織多時(shí)期的表達(dá)變化。
CubicHeatMap 可視化 多基因X多組織X多時(shí)期
前幾天跟朋友在討論的課題的時(shí)候【注:大家都是做 植物發(fā)育生物學(xué) 的】,討論到幾年前的一篇Ncom文章,其中有圖如下:

一個(gè)非常不錯(cuò)的可視化方式,雖然也帶有缺陷【注:只有一個(gè)基因的表達(dá)量可以為完全展示】。不過(guò)這個(gè)缺點(diǎn)不影響他的實(shí)用性,尤其是我們一系列共表達(dá)量基因的時(shí)候。很不幸,這個(gè)工具,似乎仍然是一個(gè)瀏覽器框架,Tomato Expression Altas。事實(shí)上,我也不知道這個(gè)瀏覽器框架到底有沒(méi)有另外的人用過(guò),不過(guò)我是不會(huì)用的。
想想很久沒(méi)有Coding,手和腦子都會(huì)生疏。于是,一般看娃,干脆就一邊實(shí)現(xiàn)這個(gè)熱圖功能。結(jié)果圖如下:

Emmm.. 忽略配色,畢竟不一定能拿到原始的配色方案。這張圖片,包括了 16個(gè)基因,11個(gè)組織和16個(gè)時(shí)期。
如何實(shí)現(xiàn)?
前述,在公眾號(hào)推文中已經(jīng)提及,JIGplot 引擎中有類似圖層的概念,也就是 SubPanel。雖然 CubicHeatMap 看起來(lái)是立方體。不過(guò)我們完全可以拆解。

JIGplot 除了掰彎,其實(shí)還有一個(gè)功能切變。后者的實(shí)現(xiàn)不是很健全,不過(guò)處理 Rectangle 完全沒(méi)問(wèn)題。直接畫三個(gè)正常的熱圖,然后分別對(duì) UpPanel 和 RightPanel 做 Shear 即可。
如何使用 CubicHeatMap ?
雖然是順手寫,不過(guò)還是打成GUI,方便自己后續(xù)使用【畢竟Java碼不是R碼,隨取隨用 】。于是,TBtools又增加了一個(gè)功能。

打開(kāi)之后,可以看到,只有兩個(gè)輸入:

1. 基因表達(dá)矩陣,這個(gè)比較簡(jiǎn)單,跟其他熱圖完全一樣

2. 樣品分組信息,這個(gè)說(shuō)起來(lái)復(fù)雜,其實(shí)也簡(jiǎn)單。一共三列:
第一列,樣品名字,即表達(dá)矩陣對(duì)應(yīng)的樣品名字【注:沒(méi)有格式和內(nèi)容要求,對(duì)應(yīng)起來(lái)就行】
第二列,樣品的第一維度分類,比如 屬于某個(gè)組織
第三列,樣品的第二維度分類,比如 處于某個(gè)時(shí)期
如下:

兩個(gè)文件放進(jìn)去,自己設(shè)置下喜歡的配色,隨后點(diǎn)擊 Start 即可

于是得到

當(dāng)然,我們不能忘了,JIGplot 是可交互的。

禮物?
Emmm... 突然想起來(lái),TBtools 的 Logo,其實(shí)就像一個(gè)熱圖。

既然有了CubicHeatMap, 那么我們完全可以做一組數(shù)據(jù),就畫 TBtools 的 Logo

寫在后面
Emmm...
練手完畢,繼續(xù)....
相信今年的 2月14 是不少人可能在很多年以后 ,仍然覺(jué)得特殊的日子。喜歡過(guò)節(jié)的,在往??赡軙?huì)花一點(diǎn)時(shí)間去準(zhǔn)備禮物,但是今年應(yīng)該就不行了。
但這一切,應(yīng)是沒(méi)有所謂。畢竟
始終如一是最好的相處,而
陪伴就是最好的禮物。
。
祝大家身體健康了。