science组合图看厚哥的解决方案-这次应该不会改动了吧
写在前面
之前我一直都说这个science组合图表这种数据输入方式不适合咱们做微生物生态的朋友们,因为我们的细菌,或者真菌,等都是单独测定出来的,也一直说要写一个函数支持一下,今天我终于有机会了,厚哥的linkET再次给了我们机会。
if(!require(devtools)) {
install.packages("devtools")
}
devtools::install_github("Hy4m/linkET")
library(ggClusterNet)
library(phyloseq)
data(ps)
ps
data("env1")
head(env1)
otu = ps %>% vegan_otu() %>%
as.data.frame()
n = otu %>% dim()
n2 = n[2]
# 由于没有很多张OTU表格,这里我重复使用了一下
otu1 = otu
otu2 = otu
otu3 = otu
#只需要输入为一个列表即可
otuall <- list(bacrerial = otu1,
Fungi = otu2,
Archaea = otu3)
#pre_meantel函数用于将这个列表转化为linkET需要额格式
pre_meantel = function(list){
otu.mantel <- do.call(cbind,otuall)
dim(otu.mantel)
n1 <- sapply(otuall,ncol)
coldsata <- function(a){
d = cumsum(a)
b <- cumsum(a) - a + 1
A = list()
for ( i in 1:length(a)){
A[[i]] <- seq(c(b[i],d[i])[1],c(b[i],d[i])[2], 1)
}
return(A)
}
names(n1) = names(otuall)
spec_select <- coldsata(n1)
names(spec_select) = names(otuall)
return(list(otu.mantel,spec_select))
}
otu.mantel <- pre_meantel(otuall)[[1]]
spec_select <- pre_meantel(otuall)[[2]]
# 计算mantel相关
mantel <- mantel_test(otu.mantel,env1,
spec_select = spec_select ) %>%
mutate(rd = cut(r, breaks = c(-Inf, 0.2, 0.4, Inf),
labels = c("< 0.2", "0.2 - 0.4", ">= 0.4")),
pd = cut(p, breaks = c(-Inf, 0.05, Inf),
labels = c("< 0.05",">= 0.05")),
direct = ifelse(r > 0, "positive","nagative")
) %>% filter(p < 0.25)
# 绘图
qcorrplot(correlate(env1), type = "lower", diag = FALSE) +
geom_square() +
anno_link(aes(size = rd,color = direct), data = mantel) +
scale_colour_manual(values = c( "#E41A1C", "#377EB8")) +
scale_fill_gradient2() +
scale_size_manual(values = c(0.5, 1, 2)) +
guides(size = guide_legend(title = "Mantel's r",
override.aes = list(colour = "grey35"),
order = 2),
colour = guide_legend(title = "Mantel's p",
override.aes = list(size = 3),
order = 1),
fill = guide_colorbar(title = "Pearson's r", order = 3))
特征微生物和环境因子相关
# 特征微生物和环境因子相关
correlate(otu[1:20], env1) %>%
qcorrplot() +
geom_square() +
scale_fill_gradient2()
根际互作生物学研究室 简介
根际互作生物学研究室是沈其荣教授土壤微生物与有机肥团队下的一个关注于根际互作的研究小组。本小组由袁军副教授带领,主要关注:1.植物和微生物互作在抗病过程中的作用;2 环境微生物大数据整合研究;3 环境代谢组及其与微生物过程研究体系开发和应用。团队在过去三年中在 isme J, Microbiome, PCE,SBB,Horticulture Research等期刊上发表了多篇文章。欢迎关注 微生信生物 公众号对本研究小组进行了解。
团队工作及其成果 (点击查看)
了解 交流 合作
团队成员邮箱 袁军:
junyuan@njau.edu.cn;
文涛:
2018203048@njau.edu.cn
团队公众号:
赞 (0)