日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

ggplot2|繪制GO富集柱形圖

 生信補(bǔ)給站 2021-01-08

生信分析中經(jīng)常會(huì)得到一些基因,然后做GO富集分析,達(dá)到對(duì)基因進(jìn)行注釋和分類的目的。

本文利用R語(yǔ)言的ggplot2包,從頭帶您繪制可發(fā)表級(jí)別的GO富集分析結(jié)果圖。



一 載入數(shù)據(jù)集和R包

利用各種生信工具得到富集分析結(jié)果,數(shù)據(jù)列可能不一致,但關(guān)鍵幾列都有。

library(ggplot2)data <- read.csv("GO_enrichment_significant.csv",header=TRUE)head(data)



二 GO結(jié)果繪制基礎(chǔ)bar圖

參照之前ggplot2使用方法,更改geom即可繪制簡(jiǎn)單的bar圖,按照GO_category分組顏色

ggplot(data=data, aes(x=GO_term,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) + geom_bar(stat="identity", width=0.8)

可看出和文獻(xiàn)中的差距較大,體現(xiàn)在以下幾個(gè)方面:

A:標(biāo)題,坐標(biāo)軸“業(yè)余”;

B:GO_category順序未按照輸入文件,相同GO_category沒(méi)在一起;

C:橫坐標(biāo)label太長(zhǎng),重疊在一起。



三  “細(xì)節(jié)”調(diào)整GO結(jié)果bar圖

3.1 坐標(biāo)軸調(diào)整策略

#將GO_term設(shè)定為factor即可按照順序輸出GO_term_order=factor(as.integer(rownames(data)),labels=data$GO_term)ggplot(data=data, aes(x=GO_term_order,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) + geom_bar(stat="identity", width=0.8) + coord_flip() + xlab("GO term") + ylab("Num of Genes") + theme_bw()


好像有一點(diǎn)能看了,嘗試其他策略。

3.2 調(diào)整橫坐標(biāo)label策略

將label調(diào)整成一定角度傾斜

COLS <- c("#66C3A5", "#8DA1CB", "#FD8D62")ggplot(data=data, aes(x=GO_term_order,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) + geom_bar(stat="identity", width=0.8) + scale_fill_manual(values = COLS) + theme_bw() + xlab("GO term") + ylab("Num of Genes") + labs(title = "The Most Enriched GO Terms")+ theme(axis.text.x=element_text(face = "bold", color="gray50",angle = 70,vjust = 1, hjust = 1 ))


嗯 ,標(biāo)簽太長(zhǎng)溢出,采取保留GO-term的前三個(gè)單詞(可以其他策略)后面...代替,可以excel或者R function 解決。

3.3 調(diào)整label長(zhǎng)度后繪圖

GO_term_order=factor(as.integer(rownames(data)),labels=labels)COLS <- c("#66C3A5", "#8DA1CB", "#FD8D62")ggplot(data=data, aes(x=GO_term_order,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) + geom_bar(stat="identity", width=0.8) + scale_fill_manual(values = COLS) + theme_bw() + xlab("GO term") + ylab("Num of Genes") + labs(title = "The Most Enriched GO Terms")+ theme(axis.text.x=element_text(face = "bold", color="gray50",angle = 70,vjust = 1, hjust = 1 ))

好了  ,這樣好像比較順眼了,不管什么軟件工具得到的GO富集結(jié)果,都可以繪圖,然后,,,發(fā)文章去吧。。。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約