氣泡圖(bubble chart)是可用于展示三個(gè)變量之間的關(guān)系。它與散點(diǎn)圖類似,繪制時(shí)將一個(gè)變量放在橫軸,另一個(gè)變量放在縱軸,而第三個(gè)變量則用氣泡的大小來(lái)表示。排列在工作表的列中的數(shù)據(jù)(第一列中列出 x 值,在相鄰列中列出相應(yīng)的 y 值和氣泡大小的值)可以繪制在氣泡圖中。氣泡圖與散點(diǎn)圖相似,不同之處在于:氣泡圖允許在圖表中額外加入一個(gè)表示大小的變量進(jìn)行對(duì)比。 小銳,你知道怎么繪制氣泡圖嗎?
今天進(jìn)行pathway富集氣泡圖代碼放送,小伙伴們快快過(guò)來(lái)圍觀。 第一步:了解輸入數(shù)據(jù)類型 Count:差異表達(dá)基因中,屬于這個(gè)通路的基因的數(shù)量。 All_count:所有基因中屬于這個(gè)通路的基因的數(shù)量。 P:富集分析p值。 FDR :富集分析的Q值。 第二步:上代碼 setwd('C:/Users/Administrator/Desktop/') #定義文件輸入輸出路徑 library(ggplot2) #加載ggplot2包 pdf("kegg.pdf",8,6) #設(shè)定輸出文件 pathway=read.table("pathway.txt",header=TRUE,sep="t",check.names = 1) #讀入數(shù)據(jù) pathway$richFactor=pathway$count/pathway$All_count #計(jì)算pathway的richFactor值 p=ggplot(pathway,aes(richFactor,Pathway)) #畫圖 p=p+geom_point(aes(size=count)) #改變點(diǎn)的大小 p=p+geom_point(aes(size=count,color=-log(p))) #根據(jù)p值自定義漸變顏色圖 p=p+scale_colour_gradient(low="green",high="red") + #改變圖片的樣式 labs(color=expression(-log(p)),size="Gene number", x="Rich factor",y="KEGG Pathway") p=p+theme_bw() #去除灰色背景 p dev.off() 第三步:亮結(jié)果 是不是感覺(jué)瞬間眼前一亮呢,如果想在X軸顯示pathway,你可以這樣做: p=ggplot(pathway,aes(Pathway,richFactor)) #畫圖 p=p+geom_point(aes(size=count,color=-log(p))) #根據(jù)p值自定義漸變顏色圖 p=p+ scale_colour_gradient(low="green",high="red") + #改變圖片的樣式 labs(color=expression(-log(p)),size="Gene number", x="Rich factor",y="KEGG Pathway") p=p+theme_bw()+theme(axis.text.x=element_text(size=8,angle=90,hjust=1))#去除灰色背景,并對(duì)x軸字體進(jìn)行設(shè)置 p dev.off() 圖形如下: ※ 接下來(lái)再安利一個(gè)柱狀圖的代碼: data$value=-log(data$p) #data$path=rownames(data) data<-data[order(data$value,decreasing=T),] #排序 pdf("pathway.pdf",4,6) p<-ggplot(data,aes(x=rev(reorder(Pathway,value)),y=value)) + geom_bar(stat='identity',fill="red")+ labs(y="-log(P value)",x="KEGG Pathway")+ theme(panel.background=element_rect(fill="white",color="#767676",size=0.5),panel.grid.minor = element_line(colour="#F0F0F0", size=0.25), panel.grid.major=element_line(size=0.25,color="#F0F0F0"))+ #設(shè)置背景色,邊框線以及內(nèi)部線條的粗細(xì)及顏色theme(axis.text.x=element_text(size=7,angle=90,hjust=1,colour="black")) p dev.off() 有了這些代碼,就可以選取需要的pathway,繪制屬于自己的圖形。 神奇代碼,學(xué)以致用 學(xué)無(wú)止境,下期繼續(xù) 更多干貨,敬請(qǐng)期待 供稿:宋瑞雪 編輯:魯淑妮 |
|
來(lái)自: 心隨所愿zh > 《網(wǎng)絡(luò)藥理學(xué)》