4. 优势物种展示

作者: 吴十三和小可爱的札记 | 来源:发表于2021-02-15 15:10 被阅读0次

简介

优势物种展示。

数据样式:常见丰度表,列为样本,行为物种,交叉区域为各物种在各样本中的丰度。

一般堆叠柱状图

一般选取top10—top15丰度的细菌门类群用于展示其丰度组成,其他的类群合并为“Others”展示;横坐标代表不同测序样本(或分组),纵坐标代表了微生物类群的相对丰度,不同的微生物类群用不同颜色展示。

library(tidyverse)
# input OTUs 
otu_table  <-  read.delim("16S-amplicon-analysis/otutab.txt", header=T, sep="\t", row.names=1, stringsAsFactors = FALSE)

metadata <- read.delim("16S-amplicon-analysis/metadata.txt", header=T, sep="\t", stringsAsFactors = FALSE)

taxonomy <- read.delim("16S-amplicon-analysis/clean_taxonomy.txt", header=T, sep="\t", stringsAsFactors = FALSE)


otu_table$OTUs <- rownames(otu_table)
genus <- subset(taxonomy, select = c(OTUs, genus))
  
temp <- merge(otu_table, genus, by = "OTUs", )
temp <- subset(temp, select = -OTUs)

temp %>% 
  group_by(genus) %>% 
  summarise_all(sum) -> genus_table

genus_table <- as.data.frame(genus_table)
genus_table <- na.omit(genus_table)
rownames(genus_table) <- genus_table$genus
genus_table <- subset(genus_table, 
                      select = -c(genus))
# rowsums and sorted
genus_table$rowsum <- rowSums(genus_table)
genus_table <- genus_table[order(genus_table$rowsum, 
                                 decreasing = TRUE), ]
# top 10
genus_top10 <- genus_table[1:10, ]
genus_top10['Others', ] <- colSums(genus_table) - colSums(genus_top10)


# # 若Others已经在top10内 
# genus_top10["rest", ] <- colSums(genus_table) - colSums(genus_top10)
# genus_top10["The_others", ] <- genus_top10["Others", ] + genus_top10["rest", ]

# check 
check_top <- function(top_table, otu_table){
  judge <- colSums(genus_top10) == colSums(otu_table)
  if (sum(judge) == length(otu_table)){
    print("Everything looks good")}
  else{print("something wrong.")}
}

check_top(genus_top10, genus_table)

## [1] "Everything looks good"

# make factor levels 
genus_top10$Taxo <- fct_inorder(rownames(genus_top10))


temp <- pivot_longer(data = genus_top10, 
                     cols = -c(Taxo, rowsum),
                     names_to = "Sample", 
                     values_to = "value")

plot_data <- merge(temp, metadata, by = "Sample")

ggplot(data = plot_data , aes(x = Sample, y = value, 
                              fill = Taxo)) + 
  geom_col(position = 'fill', width = 0.6) +
  facet_wrap(~ Group, scales = 'free_x', ncol = 3) +
  scale_fill_brewer(palette = "Set3") +
  labs(x = '', y = 'Relative Abundance(%)') +
  theme(panel.grid.minor.y = element_line(colour = "black"),
        panel.background = element_rect(color = 'black', 
                                        fill = 'transparent'))
plot.png

堆叠图连线

  1. 根据各分组数据获得起点终点坐标,利用geom_segment()做连线。

  2. ggalluvial

img

物种度聚类热图

根据所有样本在属水平的物种注释及丰度信息,选取丰度排名前35的属,从物种和样本两个层面进行聚类并绘制成热图,便于发现哪些物种在哪些样本中聚集较多或含量较低。

library(pheatmap)
# top 30
genus_top30 <- genus_table[1:30, ]
# genus_top30['Others', ] <- colSums(genus_table) - colSums(genus_top30)

plot_mat <- subset(genus_top30, select = -rowsum)
annot_col <- data.frame(row.names = colnames(plot_mat), 
                         group = metadata$Group)

pheatmap(mat = plot_mat, annotation_col = annot_col)
image.png

相关文章

  • 4. 优势物种展示

    简介 优势物种展示。 数据样式:常见丰度表,列为样本,行为物种,交叉区域为各物种在各样本中的丰度。 一般堆叠柱状图...

  • 优势物种

    这个世界,虽然还是吵着闹着自由民主,但是事实上还是被少数人控制着的。有些人生下来就是和别人不太一样,可以说是突变,...

  • Fig2-d 泡泡图的绘制2020-12-14

    3.6 气泡图Bubble plot的绘制气泡图用于多维数据的展示,即:1)不同动物2)不同物种3)物种数量(泡泡...

  • 适应性的迁徙

    无论何时适应性最强的物种总是具有最强生命力的物种。利用自身的优势,对自然环境进行最有效的利用,可以使该物种的活动范...

  • 展示自己的优势

    口才好、能说会道的人往往能在与人交流中更好地展示自己,无形中抬高自己的身价,给别人一种更深刻的印象。 “...

  • 山西省2017年功能农业与农谷建设研究生暑期学校

    一.山西小杂粮生产优势 1.地理优势 2.种类优势:小杂粮王国 3.种植规模优势:玉米,小麦,杂粮 4.产地环境优...

  • 用优势沟通和孩子对话,发现孩子的优势

    基于优势的亲子沟通 “优势沟通四步曲”: 1. 看见优势 2. 认同价值 3. 提供支持 4. 明确计划 优势沟通...

  • 《生命的未来》

    《生命的未来》 生动讲述全球物种灭绝的故事,用丰富的细节展示人类活动与物种灭绝之间的关系。在《生命的未来》中,会讲...

  • R可视化:使用R的circlize包绘制样本-物种丰度关联弦状图

    R作图-使用circlize绘制样本物种丰度关联弦状图 circlize图也即是弦图能较好展示样本物种丰度关联关系...

  • 听得到万维刚精英日课有感

    生物物种不分新旧,存活概率一样。物种必须不断演化出新的优势才行。 不看你以前有多优秀,想存活下来,就看你进步多少。...

网友评论

    本文标题:4. 优势物种展示

    本文链接:https://www.haomeiwen.com/subject/ydipxltx.html