首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >进化树分析直接上传数据,很快的

进化树分析直接上传数据,很快的

作者头像
邓飞
发布2026-03-12 17:46:43
发布2026-03-12 17:46:43
100
举报

大家好,我是邓飞。

之前计划写群体结构三剑客的博文,写了两篇了:

群体遗传三剑客第一剑:主成分分析PCA

群体遗传三剑客第二篇:Admixture群体结构分析

线上直接上传数据做进化树:

https://asreml.cn/population-genetics/phylogenetic

准备数据:plink的二进制文件,如果有分组数据也可以准备。

上传对应格式的数据:

查看结果:

结果中有原始的nwk文件,还有遗传距离文件以及两个图,下载到本地:

结果:

效果很好。

如果想要自己分析,操作方法如下:

软件:MEGA和ggtree。注意,MEGA这里用的是Linux版本的命令行megacc,ggtree是R包,主要用于可视化。

软件介绍:

MEGACC 是 MEGA 的命令行版本,能在无图形界面的环境里进行进化分析,软件地址:https://www.megasoftware.net/

ggtree是Y叔开发的R包,主要用于进化树结果的可视化,软件地址:https://bioconductor.org/packages/release/bioc/html/ggtree.html

plink格式的数据进化树分析步骤:

1,计算亲缘关系距离矩阵

代码语言:javascript
复制
plink --file aa --allow-extra-chr--chr-set60--distance1-ibs square flat-missing --genome--out IBSdis

2,整理结果

将id结果和亲缘关系结果分别整理为megacc支持的格式:

id名称格式:

亲缘关系矩阵格式:

3,将上面的两个文件整理为megacc支持的格式

上面是ID信息,下面是半三角的关系矩阵:

4,使用megacc计算进化树,得到nwk文件

代码语言:javascript
复制
megacc -a infer_NJ_distances.mao -d ibs_dismatrix.meg -o mega_IBSout

5,使用ggtree绘制进化树

代码语言:javascript
复制
library(ggtree)
tree = read.tree("mega_IBSout.nwk")

# 正常的图
tiff("tree1_plot.tiff",width = 12, height = 8, units = "in",compression = "lzw",res=300)
ggtree(tree, ladderize = FALSE, branch.length = "none") + geom_tiplab2(size=.1) + theme(legend.position = "right")
dev.off()
# 圆圈图
tiff("tree2_plot.tiff",width = 12, height = 8, units = "in",compression = "lzw",res=300)
ggtree(tree, layout="fan", ladderize = FALSE, branch.length = "none") + geom_tiplab2(size=.3) + theme(legend.position = "right")
dev.off()

结果:

也可以添加分组信息:

两者是一致的。

使用网址:https://asreml.cn

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 育种数据分析之放飞自我 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 大家好,我是邓飞。
  • 之前计划写群体结构三剑客的博文,写了两篇了:
  • 群体遗传三剑客第一剑:主成分分析PCA
  • 群体遗传三剑客第二篇:Admixture群体结构分析
  • 软件:MEGA和ggtree。注意,MEGA这里用的是Linux版本的命令行megacc,ggtree是R包,主要用于可视化。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档