Emmm, 今天的主圖,
寫在前面
博士畢業論文中,使用的樣品包括:
- 不同的類型 / 或者說不同的組織
- 不同的時間 / 或者說時間序列
所以,是一個多X多的設計。對于這類實驗設計所產生的數據,往往會有較高的分析難度。在分析上,現在多數人直接使用的是共表達網絡分析,最常用的莫過于 WGCNA 。而在可視化上,單單就基因表達熱圖繪制上,沒有較好的形式,尤其是在 多基因X多組織X多時期 的數據上。
TBtools中多種熱圖可視化方式
TBtools中,我們提供過數種熱圖的展示方式,
第一種,常規的熱圖,適用于 少基因X少樣品 的數據
這種熱圖,四四方方,其實在TBtools里面,可以有不少變化,比如不要用顏色對應數值,直接用圈的大小來對應數值
當然還有其他,比如三角形的,或者前述我們推送過的對角線熱圖的熱圖組合方式。無論怎么可視化,這類熱圖能展示的表達矩陣,仍然很少。所以在基因數達到數十或者上百之后,TBtools中有提供了掰彎的熱圖或者說,環形熱圖。
第二種,環形的熱圖,適用于 多基因X少樣品 的數據
前前后后,我在公眾號上推 環形熱圖 有超過一年時間。目前市面上,我自認為暫時就TBtools一個工具,也是第一個,是以熱圖工具為中心開發的環形熱圖,如果說之前已經有,那么那些都是以進化樹注釋為中心開發的。進化樹注釋功能,TBtools也有,對應的也有簡單版本的熱圖Track【注:功能明顯有限】。如果說,還有其他工具可以做了,那么他們都只是追隨者。環形熱圖,最大的好處,就是可以容納比較多的基因,同時基本不占版面。
大體如下,
或者,換個配色可能好看點
第三種,卡通熱圖,適用于 少基因X多樣品 的數據
雖然掰彎的熱圖,其實把基因和樣品做一個轉置【注:TBtools的熱圖功能內置矩陣轉置功能,也有專門的表格轉置功能】,就可以處理 少基因X多樣品 的情況。但是,當樣品很多,或者比較復雜時。我們人類的直觀視覺可以幫我們更好的分析數據。為此,在多年前,有一個瀏覽器框架叫eFP Browser,針對芯片數據開發。在前述,TBtools推出了基于FPKM的,支持矢量圖導入導出的FancyHeatmap。從比較多的方面有所超越。大體如下:
這種熱圖,最適合的是 可視化某個基因在多組織多時期的表達變化。
CubicHeatMap 可視化 多基因X多組織X多時期
前幾天跟朋友在討論的課題的時候【注:大家都是做 植物發育生物學 的】,討論到幾年前的一篇Ncom文章,其中有圖如下:
一個非常不錯的可視化方式,雖然也帶有缺陷【注:只有一個基因的表達量可以為完全展示】。不過這個缺點不影響他的實用性,尤其是我們一系列共表達量基因的時候。很不幸,這個工具,似乎仍然是一個瀏覽器框架,Tomato Expression Altas。事實上,我也不知道這個瀏覽器框架到底有沒有另外的人用過,不過我是不會用的。
想想很久沒有Coding,手和腦子都會生疏。于是,一般看娃,干脆就一邊實現這個熱圖功能。結果圖如下:
Emmm.. 忽略配色,畢竟不一定能拿到原始的配色方案。這張圖片,包括了 16個基因,11個組織和16個時期。
如何實現?
前述,在公眾號推文中已經提及,JIGplot 引擎中有類似圖層的概念,也就是 SubPanel。雖然 CubicHeatMap 看起來是立方體。不過我們完全可以拆解。
JIGplot 除了掰彎,其實還有一個功能切變。后者的實現不是很健全,不過處理 Rectangle 完全沒問題。直接畫三個正常的熱圖,然后分別對 UpPanel 和 RightPanel 做 Shear 即可。
如何使用 CubicHeatMap ?
雖然是順手寫,不過還是打成GUI,方便自己后續使用【畢竟Java碼不是R碼,隨取隨用 】。于是,TBtools又增加了一個功能。
打開之后,可以看到,只有兩個輸入:
1. 基因表達矩陣,這個比較簡單,跟其他熱圖完全一樣
2. 樣品分組信息,這個說起來復雜,其實也簡單。一共三列:
第一列,樣品名字,即表達矩陣對應的樣品名字【注:沒有格式和內容要求,對應起來就行】
第二列,樣品的第一維度分類,比如 屬于某個組織
第三列,樣品的第二維度分類,比如 處于某個時期
如下:
兩個文件放進去,自己設置下喜歡的配色,隨后點擊 Start 即可
于是得到
當然,我們不能忘了,JIGplot 是可交互的。
禮物?
Emmm... 突然想起來,TBtools 的 Logo,其實就像一個熱圖。
既然有了CubicHeatMap, 那么我們完全可以做一組數據,就畫 TBtools 的 Logo
寫在后面
Emmm...
練手完畢,繼續....
相信今年的 2月14 是不少人可能在很多年以后 ,仍然覺得特殊的日子。喜歡過節的,在往??赡軙ㄒ稽c時間去準備禮物,但是今年應該就不行了。
但這一切,應是沒有所謂。畢竟
始終如一是最好的相處,而
陪伴就是最好的禮物。
。
祝大家身體健康了。