微生物生态排序分析——CCA分析

微生物生态排序分析——CCA分析微生物生态排序分析 CCA 分析 library vegan library ggplot2 library permute library lattice sa4 read table spes csv header T row names 1 sep S8 p read table S8 p csv header T se

生物生态排序分析——CCA分析

library(vegan) library(ggplot2) library(permute) library(lattice) sa4=read.table("spes.csv",header=T,row.names=1,sep=",") S8.p=read.table("S8.p.csv",header=T,sep=",",row.names=1)#选择有显著性相关关系理化因子 group <- read.table("name.csv", header=F,sep=",",colClasses=c("character","character"))#用作产生图例,对样本进行分类 cca<-cca(sa4,S8.p, scale=T) sam <- data.frame(cca$CCA$u[,c(1,2)], group$V2) #提取样本得分 colnames(sam) <- c("CCA1","CCA2","group") spec <- cca$CCA$v[,c(1,2)] #物种得分 spec <- as.data.frame(spec) #可用于图中显示物种数据 #spec<-data.frame(spece=row.names(cca$CCA$v),RDA1=cca$CCA$v[,1],RDA2=cca$CCA$v[,2]) env <- cca$CCA$biplot[,c(1,2)] #环境因子得分 env <- as.data.frame(env) cca1 =round(cca$CCA$eig[1]/sum(cca$CCA$eig)*100,2) #第一轴标签 cca2 =round(cca$CCA$eig[2]/sum(cca$CCA$eig)*100,2) #第二轴标签 #绘图对象的创建 p <- ggplot(data=sam,aes(CCA1,CCA2)) #几何对象 p <- p + geom_point(aes(colour=group,shape=group),size=5) + #在图中显示物种 #geom_point(data=spec,aes(shape=spece),size=2) + scale_shape_manual(values=seq(0,20))+ #添加样本标签 #geom_text(aes(label=rownames(sam)), # size=4,hjust=0.5,vjust=-0.7,position = "jitter") + scale_shape_manual(values=c(19,19,19,19,19)) + labs(title="CCA Plot",x=paste("CCA1 ",cca1," %"),y=paste("CCA2 ",cca2," %")) + theme(text=element_text(family="serif")) #去除背景以及网格线 p=p+theme_bw() + theme(panel.grid=element_blank()) p=p + geom_segment(data = env,aes(x=0,y=0,xend = env[,1], yend = env[,2]), colour="purple", size=1.5, arrow=arrow(angle=35, length=unit(0.3, "cm"))) + geom_text(data=env, aes(x=env[,1], y=env[,2], label=rownames(env)), size=5, colour="purple",hjust = (1 - 2 * sign(env[ ,1])) / 3, angle = (180/pi) * atan(env[ ,2]/env[ ,1])) 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233152.html原文链接:https://javaforall.net

(0)
上一篇 2025年8月11日 下午4:01
下一篇 2025年8月11日 下午4:22


相关推荐

  • 为什么我charles抓包带了给锁_使用Charles抓包

    为什么我charles抓包带了给锁_使用Charles抓包使用Charles抓包Charles抓包Charles是一个HTTP代理服务器/HTTP监视器/反转代理服务器。它允许一个开发者查看所有连接互联网的HTTP通信。这些包括request、response现HTTPheaders(包含cookies与caching信息)。1、配置抓包环境1)下载Charles2)安装Charles下载完毕之后,直接进行安装即可正常使用(ps:不注册的话,每次使用3…

    2022年5月24日
    152
  • jquery tmpl遍历

    jquery tmpl遍历最近,发现大家喜欢用模板渲染一些DOM,而且常常用模板嵌套一些逻辑,看了大家用jquerytmpl较多,遇到的问题大同小异。为了避免问题重复发生,现在就个人用过的一些常用功能,作下具体介绍,主要针对遍历。其它的大家可自行看看网上教程,推荐一个:jqueryTmpl,希望对大家有所帮助1.普通数组对象的遍历,关键词{{eachArray}}、$value、$index数据格式:varperso

    2022年6月15日
    36
  • excel怎么赋值0和1_excel如何分段赋值

    excel怎么赋值0和1_excel如何分段赋值getCell 获取列 需要用 createCell获取即可。导出报表时,明明是有数据的可就是报空指针异常。排查后发下报表表格没内容时不能用。

    2022年8月19日
    10
  • 【转载】如何实施异构服务器的负载均衡及过载保护?

    【转载】如何实施异构服务器的负载均衡及过载保护?

    2021年11月20日
    36
  • sql定义变量的语法是什么_sql 定义变量

    sql定义变量的语法是什么_sql 定义变量有的时候在查询更新数据库的时候,需要多条语句的查询,因此需要多次修改declare可以满足多次执行,但数据只修改一次。declare @local_variabledata_typeDECLARE:定义变量,变量第一个字母是“@”声明时需要指定变量的类型,可以使用set和select对变量进行赋值,在sql语句中就可以使用@local

    2022年8月20日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号