使命召唤ol吃鸡模式|使命召唤ol掌上app

畫熱圖的時候如何將up or down區分開?這個小技巧告訴你

當我們做了轉錄組測序,基因中有上調也有下調基因,畫熱圖的時候如何將up or down區分開?且看接下來的小技巧。

【Hydbring P et al.Cell-Cycle-Targeting MicroRNAs as Therapeutic Tools against Refractory Cancers.Cancer Cell,2017.】

本篇,我們要解決的問題是:熱圖中如何將不同類別用不同的漸變色表示,如上圖所示。接下來,舉個例子,若做每個microRNA與Description的熱圖,顏色漸變是-log10Pvalue,regulated是up的用紅色進行漸變,down的用藍色進行漸變。圖例做成如下圖所示的樣子。

#數據處理:
library(scales)
library(plyr)
library(reshape2)
d<-read.csv(“test.data”,header=T,sep=“\t”,check.names=F,row.names=2)
row<-nrow(d)
if(row<3){?q()?}
data<-d[,-1]
pvalue<-data[,c(grep(“_pvalue”,colnames(data)))]
regulate<-data[,c(grep(“_regulated”,colnames(data)))]
col_name1<-gsub(“_pvalue”,“”,colnames(pvalue))
col_name2<-gsub(“_regulated”,“”,colnames(regulate))
colnames(pvalue)<-col_name1
colnames(regulate)<-col_name2
pvalue.m<-melt(as.matrix(pvalue))
regulate.m<-melt(as.matrix(regulate))
colnames(pvalue.m)<-c(“Pathway”,“ID”,“Pvalue”)
colnames(regulate.m)<-c(“Pathway”,“ID”,“Regulate”)
good<-merge(pvalue.m,regulate.m,by=c(“Pathway”,“ID”))
goods<-ddply(good,?.(Pvalue),?transform,?log10P?=?-log10(Pvalue))
m1<-goods[goods$Regulate==“up”,]
m2<-goods[goods$Regulate==“down”,]

最終數據整成這個樣子:

接下來敲重點啦~~

#開始繪圖:
library(ggplot2)
library(ggnewscale)
#先做up部分
ggplot()+geom_tile(data=m1,mapping=aes(ID,Pathway,fill?=?log10P),colour?=?“white”)+scale_fill_gradientn(colours?=?c(“white”,“red”))+
#這個是重點,new_scale函數來自ggnewscale包
new_scale(“fill”)+
#再做down部分
geom_tile(data=m2,mapping=aes(ID,Pathway,fill?=?log10P),colour?=“white”)+scale_fill_gradientn(colours?=?c(“white”,“blue”))+
#down的圖例翻轉一下
guides(fill=guide_colorbar(reverse=T))+
#兩個圖例排排站
theme(legend.direction=“vertical”,legend.box=“horizontal”,legend.title=element_blank(),axis.text?=?element_blank(),axis.ticks?=?element_blank())+
#還有坐標軸的線
+theme(axis.line?=?element_line(colour?=?“black”))?
#橫縱坐標和圖標題設置
labs(x?=?“Noncoding?RNA?ID”,?y?=?“KEGG?pathway/GO?Term”,?title?=?“Good?Luck”?)+
#圖標題居中
theme(plot.title?=?element_text(hjust?=?0.5)?)

#野人版圖片

【小編技巧總結】

  • Hadley Wickham是R界的男神沒錯了
  • ggnewscale中的new_scale函數發揮重大作用

 

最近文章
使命召唤ol吃鸡模式