直方圖(Histogram),又稱質(zhì)量分布圖,是一種統(tǒng)計報告圖,由一系列高度不等的縱向條紋或線段組成,表示數(shù)據(jù)分布的情況。 一般用橫軸(X軸)表示數(shù)據(jù)類型,縱軸(Y軸)表示分布(相應(yīng)值的頻數(shù))情況。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序設(shè)計、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了云溪免費建站歡迎大家使用!
繪制直方圖,首先要對數(shù)據(jù)進(jìn)行分組,然后統(tǒng)計每個分組內(nèi)數(shù)據(jù)元的數(shù)量。 在平面直角坐標(biāo)系中,橫軸標(biāo)出每個組的端點,縱軸表示頻數(shù),每個矩形的高代表對應(yīng)的頻數(shù),稱這樣的統(tǒng)計圖為頻數(shù)分布直方圖。一般要了解以下幾個名詞的概念:
組數(shù):統(tǒng)計數(shù)據(jù)時,把數(shù)據(jù)按照不同的范圍分成幾個組,分成組的個數(shù)稱為組數(shù);
組距:每一組兩個端點的差;
頻數(shù):分組內(nèi)的數(shù)據(jù)元的數(shù)量除以組距;
1、顯示各組頻數(shù)或者數(shù)量分布情況;
2、顯示各組間頻數(shù)或數(shù)量的差異;
可以利用hist()函數(shù)進(jìn)行繪制:
[1] Robert I. Kabacoff (著). R語言實戰(zhàn)(高濤/肖楠/陳鋼 譯). 北京: 人民郵電出版社.
[2]
[3]
前面我給大家詳細(xì)介紹過
?GO簡介及GO富集結(jié)果解讀
?四種GO富集柱形圖、氣泡圖解讀
?GO富集分析四種風(fēng)格展示結(jié)果—柱形圖,氣泡圖
?KEGG富集分析—柱形圖,氣泡圖,通路圖
? DAVID GO和KEGG富集分析及結(jié)果可視化
也用視頻給大家介紹過
? GO和KEGG富集分析視頻講解
最近有粉絲反映說,利用clusterProfiler這個包繪制GO富集分析氣泡圖和柱形圖的時候,發(fā)現(xiàn)GO條目的名字都重疊在一起了。
氣泡圖
柱形圖
這個圖別說美觀了,簡直不忍直視。經(jīng)過我的認(rèn)真研究,發(fā)現(xiàn)跟R版本有關(guān)。前面我給大家展示的基本都是R 3.6.3做出來的圖。很多粉絲可能用的都是最新版本的R 4.1.2。
我們知道R的版本在不停的更新,相應(yīng)的R包也在不停的更新。我把繪制氣泡圖和柱形圖相關(guān)的函數(shù)拿出來認(rèn)真的研究了一下,終于發(fā)現(xiàn)的癥結(jié)所在。
dotplot這個函數(shù),多了個 label_format 參數(shù)
我們來看看這個參數(shù)究竟是干什么用的,看看參數(shù)說明
label_format :
a numeric value sets wrap length, alternatively a custom function to format axis labels. by default wraps names longer that 30 characters
原來這個參數(shù)默認(rèn)值是30,當(dāng)標(biāo)簽的長度大于30個字符就會被折疊,用多行來展示。既然問題找到了,我們就來調(diào)節(jié)一下這個參數(shù),把他設(shè)置成100,讓我們的標(biāo)簽可以一行展示。
是不是還是原來的配方,還是熟悉的味道
同樣的柱形圖,我們也能讓他恢復(fù)原來的容貌。
關(guān)于如何使用R做GO和KEGG富集分析,可參考下文
GO和KEGG富集分析視頻講解
儲存原始數(shù)據(jù)后,將其在R中命名為test,運行以下數(shù)據(jù)就能得到你要的條形圖了
tp - barplot(test$Length_distribution, names.arg=test$Sequence_size, las =2, ylim=c(0,30000),col="black")
text(tp, test$Length_distribution, labels =test$Length_distribution,pos=4,srt=90,offset=0)