为了避免各位错过最新的推文教程,强烈建议大家将“科研后花园”设置为“星标”!
###安装LorMe包
install.packages("LorMe")
##加载MicrobiomeStat包
library(LorMe)# Lightening One-Code Resolving Microbial Ecology Solution
library(ggplot2)# Create Elegant Data Visualisations Using the Grammar of Graphics
library(dplyr)# A Grammar of Data Manipulation
##加载示例数据集
data(testotu)# Load the standard Qiime output feature table
head(testotu)# First column -ID, last column -taxonomic annotation, others - the featuretable.
feature_table<- testotu[, -c(1,22)]
tax_anno<- testotu[, c(1,22)]
#创建分组数据
groupinformation <- data.frame(
group = c(rep("a", 10), rep("b", 10)),
factor1 = rnorm(10),
factor2 = rnorm(mean = 100, 10),
subject = factor(c(1:10, 1:10)),
group2 = c(rep("e", 5), rep("f", 5), rep("e", 5), rep("f", 5))
)
###对数据进行封装
test_object <- tax_summary(
groupfile = groupinformation,
inputtable = feature_table,
reads = TRUE,
taxonomytable = tax_anno
)
###对一些默认设置进行配置
my_col=color_scheme("Plan1")
my_order=c("b","a")
my_facet_order=c("e","f")
test_object_plan2 <- object_config(
taxobj = test_object,
treat_location = 1,
rep_location = 4,
facet_location = 5,
subject_location = NULL,
treat_col = my_col,
treat_order = my_order,
facet_order = my_facet_order
)
Taxonomy tidying...
Genarating tables...
Done
Contained elements:
"Groupfile""Base""Base_percent" [1]
"Base_taxonomy""Phylum""Phylum_percent" [4]
"Phylum_taxonomy""Genus""Genus_percent" [7]
"Genus_taxonomy""parameters" [10]
Warning message:
in261 rows [4, Expected 7 pieces. Missing pieces filled with `NA`
6, 9, 12, 18, 20, 24, 32, 37, 43, 44, 45, 46, 58, 59, 68, 70, 71,
72, 76, ...].
1)进行群落结构组成分析,主要基于community_plot()函数完成,以门水平为例:
##绘制门水平排名前10的物种
require(magrittr)
phylum10 <- community_plot(
taxobj = Two_group,
taxlevel ="Phylum",#分析水平设置
n =10,#保留排名前10的物种
rmprefix ="p__",#去除一些物种名中附带的前缀
palette ="Paired"
)
#柱状堆积图绘制
barplot
mean_barplot
#面积图
areaplot
#冲积图
alluvialplot
2)属水平:
genus10 <- community_plot(
taxobj = Two_group,
taxlevel = "Genus",
n = 10,
rmprefix = "g__",
palette = "Paired"
)
##柱状堆积图绘制
genus10$barplot
genus10$mean_barplot
##面积图
genus10$areaplot
##冲积图
genus10$alluvialplot
3)提取数据自定义可视化-以属水平为例:
##提取数据中属水平物种排名前10的相对丰度数据
data <- genus10$Grouped_Top10Genus
data$SampleID <- factor(data$SampleID,levels = data$SampleID[1:16])
##颜色
col <- genus10$filled_color
#绘图
ggplot(data, aes( x = SampleID, y=100 * rel_abundance,fill = tax))+
geom_bar(stat="summary",fun=mean,position = 'stack')+
scale_y_continuous(expand = c(0,0))+# 调整y轴属性,使柱子与X轴坐标接触
scale_x_discrete(expand = c(0,0))+# 调整y轴属性,使柱子与X轴坐标接触
labs(x=NULL,y="Relative Abundance(%)",#设置X轴和Y轴的名称以及添加标题
fill="Genus")+
guides(fill=guide_legend(keywidth = 1, keyheight = 1)) +#修改图例的框大小
theme_bw()+
theme(panel.grid = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
axis.title.y = element_text(size = 12),
axis.text = element_text(size = 9))+
scale_fill_manual(values = col)+
facet_grid(~Group, scales = 'free',space = "free")
##合并
ggplot(data, aes( x = Group, y=100 * rel_abundance,fill = tax))+
geom_bar(stat="summary",fun=mean,position = 'stack')+
scale_y_continuous(expand = c(0,0))+# 调整y轴属性,使柱子与X轴坐标接触
scale_x_discrete(expand = c(0,0))+# 调整y轴属性,使柱子与X轴坐标接触
labs(x=NULL,y="Relative Abundance(%)",#设置X轴和Y轴的名称以及添加标题
fill="Genus")+
guides(fill=guide_legend(keywidth = 1, keyheight = 1)) +#修改图例的框大小
theme_bw()+
theme(panel.grid = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
axis.title.y = element_text(size = 12),
axis.text = element_text(size = 9))+
scale_fill_manual(values = col)
更多内容大家请阅读LorMe包的帮助文档!
参考:LorMe包帮助文档
微生物组系列推文合集:
扩增子测序数据分析还不会?小编整理的全套R语言代码助您轻松解决问题!(更新版)
「微生物组」基于LorMe包进行微生物组数据分析—Beta多样性分析!!!
「微生物组」基于LorMe包进行微生物组数据分析—Alpha多样性分析!!!
「微生物组」基于microeco包进行共现性网络分析!!!
「微生物组」基于microeco包进行lefsef分析及随机森林分析!!!
「微生物组」Stamp结果图复现——分组差异图的绘制!!!
「微生物组」基于microeco包进行环境数据关联分析—以RDA分析为例!!!
「微生物组」基于microeco包进行共享/独特OTU计算及可视化!!!
「微生物组」基于microeco包进行Alpha多样性分析!!!
「微生物组」基于microeco包进行微生物群落结构组成分析!!!
R可视化——Manteltest分析及可视化
基于R语言的微生物群落组成多样性分析——α多样性及其可视化
基于R语言的微生物群落组成多样性分析—β多样性之PCoA分析
基于R语言的微生物群落组成多样性分析—β多样性之组间差异性检验
基于R语言的微生物群落组成多样性分析——物种丰度计算及可视化
基于R语言的微生物群落组成多样性分析——物种丰度可视化之热图(Heatmap)
基于R语言的微生物群落组成多样性分析——物种丰度可视化之弦图(Chord Diagram)
基于R语言的微生物群落组成多样性分析——共线性网络分析
基于R语言的微生物群落组成多样性分析——RDA分析
基于R语言的微生物群落组成多样性分析——CCA分析
基于R语言的微生物群落组成多样性分析——PCA分析
基于R语言的微生物群落组成多样性分析——聚类分析
基于LEfSe分析进行微生物物种差异及关联分析
基于R语言的微生物群落组成分析—差异OTU筛选及展示
基于R语言的微生物群落组成多样性分析——NMDS分析
基于R语言的微生物群落组成分析—α多样性指数的正态分布检验及差异性标注()
R可视化——基于MicrobiomeStat包进行微生物组数据分析(更新版)!!!
基于R语言进行扩增子数据的UMAP分析!
R可视化——共现性网络分析第二弹
R可视化——基于MicrobiotaProcess包进行物种群落结构组成分析!
R可视化——基于MicrobiotaProcess包进行物种差异分析!
基于microeco包进行PCoA分析!!!
基于MicrobiotaProcess包进行PCoA分析!
R可视化——基于MicrobiotaProcess包进行Alpha多样性分析!
PS: 以上内容是小编个人学习代码笔记分享,仅供参考学习,欢迎大家一起交流学习。
R绘图模板合集(包括附带注释的源码、测试数据及绘制效果图)可在公众号后台菜单栏查看具体获取方式!绘图模板合集效果图展示: