久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

R之箱線圖繪制

 微生信生物 2021-01-16

16s分析一直在連載,但是最基礎的莫過于alpha多樣性了,,但是箱線圖卻不是alpha多樣性的唯一選擇,箱線圖也不是局限于alpha多樣性,,這里借助alpha多樣性,,將箱線圖做一個完整繪制


#這里安裝的這個包就是做顯著性分析的

#install.packages("ggpubr")安裝包

library("ggplot2")

library("ggpubr")

setwd("E:/Shared_Folder/HG_usearch_HG")

# 讀入實驗設計和Alpha多樣性值

design =read.table("map_lxdjhg.txt", header=T, row.names= 1,sep="\t")

alpha =read.table("alpha8825.txt", header=T, row.names= 1,sep="\t")

head(design)

head(alpha)

#合并數(shù)據(jù)框,按照列,,all=F,表示只取兩者共有列名的數(shù)據(jù)

index =merge(alpha, design,by="row.names",all=F)

head(index)

方便大家學習,,這里給出index數(shù)據(jù)窗口:


#添加作圖變量,使用geom_boxplot()不修改任何參數(shù),,出圖,,似乎也挺好看的!

ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

  geom_boxplot()

但是我們還不夠滿意,!繼續(xù):

#我們讓所有樣本點都顯示出來

ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

  geom_boxplot()+geom_jitter()

似乎很凌亂,,這里咱們有辦法:

可以通過設置“jitter”參數(shù)來調整數(shù)據(jù)的分布:geom_jitter(position=position_jitter(0.5))

position_jitter用來調整數(shù)據(jù)的凌亂程度,數(shù)值越大越凌亂,。

#我們數(shù)據(jù)量比較少,,設置緊密一點既可以達到美觀的

ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

 geom_boxplot()+geom_jitter(position=position_jitter(0.15))

這張圖出來我們發(fā)現(xiàn)異常了,我明明只有九個點,,為什么有的組會多幾個點呢,,原來是箱線圖將原來異常值的點算了兩次,這里我們?nèi)サ粼瓉懋惓V档狞c:alpha=0為什么選用這個命令呢,,因為這里咱們還要使用,,點的顏色和箱線圖相沖,這個命令可以調節(jié)透明度,弱化點的存在:

#我們的點不需要這么亮,,于是設置透明度為alpha0.4

ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

 geom_boxplot(alpha=0)+geom_jitter(position=position_jitter(0.17),alpha=0.4)

問題又來了,,箱線圖箱子很細,不好看:

#加上我們自己設定的標簽

ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

  geom_boxplot(alpha=0,size=0.8, width=0.5)+

  geom_jitter(position=position_jitter(0.15),alpha=0.6,size=1.2)+

  labs(x="Groups", y="chao1index")

size=0.8:調整箱子厚度

width=0.5:調整箱子寬度

size=1.2:調整點的大小

調整一下外觀:

p<-ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

  geom_boxplot(alpha=0,size=0.8, width=0.5)+

  geom_jitter(position=position_jitter(0.15),alpha=0.6,size=1.2)+

  labs(x="Groups", y="chao1index")

p+theme_classic()

有些小伙伴可能有分面的需求,這里我選了一部分觀測,,來做分面,,一個分面只有一個箱子,當然要有多個箱子,,就把多個箱子分為一組就好了,,

#取三組觀測

index1<-index[index$SampleType%in%c("GF1","GC1","G0"),]#多個字符串就要用這個%in%c

head(index1)

p<-ggplot(index1,aes(x=SampleType, y=chao1, color=SampleType))+

  geom_boxplot(alpha=0,size=0.8, width=0.5)+

  geom_jitter(position=position_jitter(0.15),alpha=0.6,size=1.2)+

  labs(x="Groups", y="chao1index")

#分面命令facet_grid

p+ facet_grid(.~SampleType)

到這里,箱線圖就說的差不多了,,但是作為科研用圖,,統(tǒng)計自然少不了,然我們來為自己的箱子做統(tǒng)計分析吧:

這里推薦包ggpubr,,這里用參數(shù)檢驗和非參數(shù)檢驗方法

圖片來自R語言可視化學習筆記之添加p-value和顯著性標記,,Easycharts公眾號

head(index)

#默認為"wilcox.test"這是兩組的非參數(shù)檢驗,微生物生態(tài)方面我們常用非參數(shù)檢驗,,但是這里我們是多個組的,,因此,更改為Kruskal-Wallis檢驗

compare_means(shannon~SampleType,data=index, paired = TRUE,method = "kruskal.test")

結果如下,,多組間是顯著的:

#在這里我們就兩兩檢驗,,看看那些組顯著:

df_summarise<-compare_means(shannon~SampleType,data=index, paired = TRUE)

# compare_means的計算是以tbl格式返回的,我們可以轉成dataframe

df_summarise<-as.data.frame(df_summarise)

setwd("L:/#R語言學習/測試數(shù)據(jù)")

write.table(df_summarise,"alpha—wilcox.test.txt",quote= FALSE,row.names = T,

            col.names = T,sep = "\t")

輸出表格,,使用excel查看:(這里沒有必要輸出第一列,,可以設置row.names = F

但是ggpubr包提供了更加方便的方式將這些顯著性結果展示在圖上

#多組檢驗,設置合適的坐標

p+theme_classic()+stat_compare_means(method= "kruskal.test",label.x = 1.5, label.y = 2900)

#不只是多組檢驗,,我們選擇關注的兩組檢驗

my_comparisons<- list(c("GC1", "GF1"), c("GC5","GF5"))

#這里我們由于選擇了要兩組比較的組,,所以為了出圖美觀,將橫坐標進行了一個排序,,做顯著性將不顯著的組hide.ns = T隱藏,,由于在做多組比較是出錯,無法和排序命令一起使用,,所以這里我人工添加多組比較結果

p+theme_classic()+scale_x_discrete(limits=c("G0","GC1","GF1","GC5","GF5","GN1","GN5"))+

 stat_compare_means(comparisons=my_comparisons,label ="p.signif",hide.ns = T)+

 annotate("text",x=1.7,y=2200,parse=TRUE,size=4,label="'kruskal.test:'*5.3e-09",family="serif",fontface="italic",colour="darkred")

到這里就快完成了,,我們加上保存命令,再次重新出圖:

#  res = 300分辨率,units="mm"高度和寬度的單位#發(fā)文章中要求的格式和一些其他參數(shù)設置如上

tiff(file="alpha_chao1.tif",res = 300, compression = "none", width=180,height=140,units="mm")

p<-ggplot(index,aes(x=SampleType, y=chao1, color=SampleType))+

  geom_boxplot(alpha=0,size=0.8, width=0.5)+

  geom_jitter(position=position_jitter(0.15),alpha=0.6,size=1.2)+

  labs(x="Groups", y="chao1index")

p+theme_classic()+scale_x_discrete(limits=c("G0","GC1","GF1","GC5","GF5","GN1","GN5"))+

  stat_compare_means(comparisons=my_comparisons,label= "p.signif",hide.ns = T)+

 annotate("text",x=1.7,y=2200,parse=TRUE,size=4,label="'kruskal.test:'*5.3e-09",family="serif",fontface="italic",colour="darkred")

dev.off()#這條命令必須加上才可以得到保存的圖片


學習永無止境,,分享永不停歇!


    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約