Alpha多样性之箱线图绘制

Alpha多样性

通常用Richness,Chao1,Shannon,Simpson,Dominance和Equitability等指数来评估样本的物种多样性。

所以这个节学习主要分两个部分;

## 1 计算 α生物多样性指数

软件: R软件中vegan包

## 1 第一步输入数据整理成矩阵
>data = read.table(inputFile, header = T, sep = "\t", row.names = 1)
>head(data)
      sp1 sp2 sp3 sp4 sp5 sp6 sp7

sample1 3 6 1 2 1 0 0

sample2 8 0 30 0 0 0 0

sample3 0 1 0 2 0 1 3

### 2 基于最小值进行重抽样标准,如果16数据通过single_rarefaction.py进行标化
>dataR = rrarefy(data,min(rowSums(data)))

### 计算各Alpha多样性指数
>library(vegan)

#计算Shannon-Wiener指数
>Shannon.wiener = diversity(dataR, "shannon")

#计算Simpson指数
>Simpson = diversity(divdata,"simpson") 

#计算Inverse Simpson指数
>Inverse.Simpson = diversity(dataR, index = "inv")

#计算物种累计数
>S = specnumber(dataR)

#计算Pielou均匀度指数
>J = Shannon.Wiener / log(S)

#计算chao1, ACE
>ca = data.frame(estimateR(dataR))

#数据保存,将上述数据保存为.csv文件
>write.csv(Shannon, "$yourpath")

##Simpson指数值越大,说明群落多样性越高;Shannon指数越大,说明群落多样性越高
##Chao1值越大代表物种总数越多

以上是计算每个样品的alpha 多样性指数(即每个样品的sp的分布情况

由于单个样品的多样性指数是不可以绘制箱线图,所以引入分组的概念;
 

Sample    Group
sample1    A
sample2    A
sample3    B
sample4    B
sample5    C
sample6    C

## 2 根据上一步的数据以及分组信息,绘制箱线图

软件: R, ggplot2

以绘制Shannon箱线图为例子

## 1 输入数据整理成矩阵
>head(dataforDraw)
samples    shannon    groups
sample1    4.3    A
sample2    4.1    A
sample3    3.2    B


## 2 ggplot2 绘制box图
>p <- ggplot(dataforDraw, aes(x=groups, y=shannon),color=groups) + 
  geom_boxplot(aes(fill=factor(groups))) +
  theme(axis.text.x=element_text(angle=50,hjust=0.5, vjust=0.5))
>p


 

箱线图 说明:从下到上展示的是最小值,第一四分位数 (箱子的下边线)、中位数 (箱子中间的线)、第三四分位数 (箱子上边线)、最大值,两端延长线外的数据为异常值

 以上画图的有两点没有详细讲解,但需要注意:

① 输入数据的格式的整理(需要R 数据处理的基础)

②图形的美化

PS:读入数据并转换为ggplot2需要的长数据表格式,melt格式是ggplot2画图最喜欢的格式

        继续努力

猜你喜欢

转载自blog.csdn.net/rojyang/article/details/81357760