Molecular Dating Analysis Using PhyloSuite v2

This tutorial uses a set of example data to provide detailed guidance on how to efficiently and accurately perform the entire workflow of molecular dating analysis and visualization using PhyloSuite v2, offering researchers a user-friendly solution.

Figure 1. PhyloSuite Molecular Dating Analysis Suite Entry
Users can hover over the “Phylogeny” option on the main PhyloSuite interface (Figure 1) and find three plugins in the dropdown menu: MDGUI, TimeTreeAnno, MCMCTracer.
System Requirements & Download
PhyloSuite is mainly written in Python and is compiled for Windows, Mac OS, and Linux versions. To avoid missing dependencies, it is recommended to download the version with bundled plugins. The latest version of PhyloSuite can be downloaded from: http://phylosuite.jushengwu.com/dongzhang0725.github.io/installation/#Chinese_download_link
Tips: Users can download example files from the official website to test the software and debug: http://phylosuite.jushengwu.com/example.zip
1. MDGUI-MCMCtree
MDGUI includes two components: MCMCtree and r8s. Users can select based on their needs.

Figure 1.1a. Drag-and-Drop File Import in MDGUI
- Sequence Alignment File (Alignment): Drag multi-sequence alignment files (FASTA, NEXUS, PHYLIP formats supported) into the file input box (Figure 1.1a).
- Tree File (Treefile): Similarly, import a tree file with species phylogenetic relationships (recommended in nwk format). Tips: MDGUI supports three import methods: drag-and-drop, button import, or automatic import from upstream results (see Figures 1.1b, 1.1c).
- After importing, the program will automatically detect the sequence type (AAs, nucleotides, codon) and display it in the “seqtype” option.
- After importing the tree, click “Add calibration points in tree” to open the fossil calibration visualization interface (see Section 1.1.1).
- The software automatically detects the number of species and displays it. Ensure species names match between alignment and tree files; mismatches will trigger a warning.
Tips: MCMCtree requires a rooted tree, and the root must have a calibration point. Otherwise, MDGUI will prompt an error during the run. See next section for solutions.
Tips: For viral sequences with temporal information in sequence names, enable “Enabling tip-dating analyses” for tip-dating analyses (link).

Figure 1.1b. Automatic Import from Upstream Analysis in MDGUI
- At startup, MDGUI automatically detects results from upstream programs (IQ-TREE, MrBayes, FastTree) and prompts for selection (Figure 1.1b).
- Choose the folder containing the results to import.
- PhyloSuite automatically populates the “Alignment” and “Treefile” input boxes.

Figure 1.1c. Button-Based File Import in MDGUI
- Click the folder icon next to “Alignment” or “Treefile” to open a file browser (Figure 1.1c).
- Files are filtered for compatible types; select the file and click “Open”.
1.1.1 Adding Fossil Calibration Points

Figure 1.2. Fossil Calibration Visualization Interface
- Right-click a node to add or remove calibration information.
- For unrooted trees, select a root node and use “set as outgroup (root tree)”.
- Click “Add calibration” to open the settings dialog with three tabs: “MCMCtree”, “MCMCtree root node”, and “r8s” (Figure 1.3a).
- “Remove calibration” deletes all calibration info for that node.
- Save settings with the “M” button or close the dialog.
- For r8s analysis, save all r8s calibration info with the “r” button.
Tips: MCMCtree requires a root node calibration.

Figure 1.3a. Setting MCMCtree Root Node Calibration
- Set root node time in the “MCMCtree root node” tab, or use the Rootage parameter on the main interface.

Figure 1.3b. Setting MCMCtree Fossil Calibrations
- Set calibration for other nodes in the “MCMCtree” tab (Figure 1.3b).
Common soft-bound formats:
- Between bounds: “>0.06<0.08” or “B(0.06,0.08)”
- Minimum only: “>0.06” or “L(0.06)”
- Maximum only: “<0.08” or “U(0.08)”
Soft bounds allow small probability (e.g., 2.5%) to exceed limits.
Advanced distributions:
- Gamma: “G(alpha,beta)”
- Skew Normal: “SN(location,scale,shape)”
- Skew t: “ST(location,scale,shape,df)”

Figure 1.3c. Setting r8s Fossil Calibration
- Use “r8s” tab when analyzing with r8s.
- Select supported formats, modify values, click “OK”.
r8s commands for node ages: calibration, constraint, fixage, unfixage node.
1.1.2 Parameter Settings

Figure 1.4. MDGUI-MCMCtree Parameter Settings
MDGUI simplifies parameter settings and automates some MCMCtree steps. Key points:
- burnin: set as proportion (e.g., 10%).
- usedata: approximate likelihood mode automates Hessian matrix calculation.
- Thread: run multiple independent MCMC chains; results merged automatically.
- Repeat for convergence: divides chains into 2 repeats for convergence check.

Figure 1.4a. Supported Models in MDGUI-MCMCtree
- model: choose from extensive nucleotide, codon, amino acid models. Use “AUTO” for automatic selection with ModelFinder.
- Program for generating Hessian matrix: choose MCMCtree or IQ-TREE (supports more models and mixture models).
- Using mixture models: recommended when IQ-TREE is selected.

Figure 1.4b. Preview/Edit Configuration
- Click “Preview/Edit configuration” to manually edit the generated mcmctree.ctl file and run MCMCtree.
1.2 Running & Real-Time Monitoring
1.2.1 Start Analysis

Figure 1.5. Start MDGUI Analysis
- Click “Start” to run.
- Modify working directory or output folder name; defaults to “myWorkplace/MOLDAT_results”.
1.2.2 Real-Time Status

Figure 1.6. MDGUI Run Log
- Logs show current status; can be saved via “Save to file”.
- Click “MCMCTracer” to summarize MCMC samples and check convergence in real-time.
1.2.3 Pause & Resume

Figure 1.7. MDGUI Pause & Resume
- Pause: click “Stop”; checkpoints saved.
- Resume: click “Continue Previous Analysis” and select folder.
1.2.4 MCMC Summarization

Figure 1.8. Summarize MCMC Results
- Click “Summarize MCMC samples and infer time tree” to summarize samples and generate time tree.
- Import summarized results into MCMCTracer for plotting and analysis.
1.3 Output Files

Figure 1.9. Post-Run Import to Visualization
1.3.1 Folder Naming
Default folder name: analysis start timestamp. Can be customized.
1.3.1.1 Without “Repeat for Convergence”

Figure 1.10a. Folder Contents without Repeat
Contains run folders, all_mcmc_runs.txt, summarization.out, FigTree.tre.
1.3.1.2 With “Repeat for Convergence”

Figure 1.10b. Folder Contents with Repeat
Contains repeat1 and repeat2 folders, each with run folders; merged outputs also generated.
2. MCMCTracer
MCMCTracer performs statistical analysis, visualization, and convergence diagnostics for MCMC samples (Figure 2.1).
2.1 Trace Tab

Figure 2.1. MCMCTracer Main Interface
- Import files via button or drag-and-drop.
- Displays all data columns for selection; visualized as Trace, Histogram, Scatter Plot.
- Summary statistics show mean, median, 95% CI, ESS, etc.
- Export plots in multiple formats.
2.2 Convergence Tab

Figure 2.2. MCMCTracer Convergence Diagnostics
- Compare repeat1 and repeat2, or independent chains.
- Automatic extraction of summarization.out.txt; scatter plot y=x shows convergence.
- Export convergence plots in PNG, JPEG, SVG, PDF.
3. TimeTreeAnno
TimeTreeAnno visualizes and annotates time trees from MCMCtree, BEAST, r8s, MrBayes, etc.
3.1 File Import & Visualization

Figure 3.1. TimeTreeAnno Main Interface
- Import tree via button or drag-and-drop.
- Select time unit (1MYA/100MYA).
- Interface displays file name; right-side panel allows element customization.

Figure 3.2. Annotated Time Tree
- TREE tab: adjust size, colors, background.
- NODE tab: list nodes, colors, copy names.
- ANNOTATION tab: add labels, cluster colors.
- Click “Update Figure” to apply changes.

Figure 3.3. Export TimeTreeAnno Figures
- File → Save as; choose format: JPEG, PNG, SVG, PDF.
4. MDGUI-r8s
r8s workflow similar to MCMCtree, but calibration formats and saving differ.

Figure 4.1. MDGUI-r8s Main Interface (Linux/Mac)
- Import alignment and tree as before.
Tips: Windows uses pyr8s; Linux/Mac uses native r8s.
4.1.1 Parameter Settings

Figure 4.2a. Describe Settings
- Select output content: cladogram, phylo_description, node_info.

Figure 4.2b. MDGUI-r8s Parameter Settings
- Preview/Edit configuration: modify r8s_cmd_data.txt.
- Generate config file to run in terminal.
4.2 Results & Output
4.2.1 Folder Naming

Figure 4.3. Rename r8s Result Folder
- Default: analysis timestamp; can customize.
4.2.2 Folder Contents

Figure 4.4. r8s Result Folder
- Output files depend on describe/plot options: cladogram, chronogram, ratogram.nwk.
- r8s_cmd_data.txt contains full commands and tree info.
5. FAQ
5.1
Acknowledgements
Thanks to the PhyloSuite user community for feedback that helped improve the software.
使用PhyloSuite v2进行分子定年分析

本文主要以一套示例数据为例,提供详细的分析教程,演示如何利用 PhyloSuite v2 高效、准确地完成从分子钟定年结果与可视化的全部分析流程,为广大研究人员提供一个用户友好的解决方案。

图1. PhyloSuite 分子定年分析套件入口
用户可以通过在 PhyloSuite 主界面中将鼠标悬停在“Phylogeny”选项上(图1),在下拉框中可以找到三个插件:MDGUI、TimeTreeAnno、MCMCTracer。
运行环境与下载地址
PhyloSuite 主要基于 Python 语言编写,已编译可运行于 Windows、Mac OS 和Linux 操作系统的对应版本。为避免程序需要的插件缺失,推荐用户下载带插件的版本。PhyloSuite 最新版本可在官网下载:http://phylosuite.jushengwu.com/dongzhang0725.github.io/installation/#Chinese_download_link
Tips:用户可以在官网下载例子文件用于测试软件和debug:http://phylosuite.jushengwu.com/example.zip
1. MDGUI-MCMCtree
MDGUI 功能包含 MCMCtree 和 r8s 两个功能组件,用户可以根据需要选择使用。
1.1 文件输入与准备

图1.1a. MDGUI文件拖拽导入
① 序列比对文件(Alignment):将多重多序列比对文件(支持FASTA、NEXUS、PHYLIP 等格式)拖拽到文件输入框(图1.1a)。
② 树文件(Treefile):通过相同的方式导入含物种系统发育关系的进化树文件(建议 nwk 格式)。
Tips:MDGUI 支持三种文件导入方式,分别是:拖拽导入、按钮导入以及自动导入上游程序结果(其他导入方式演示见下文图1.1b、1.1c)。
③ 当用户导入文件后,程序会自动识别序列类型(AAs、nucleotides、codon)并显示在“seqtype”选项中。
④ 树文件导入后,通过“Add calibration points in tree”按钮可以打开化石校准信息可视化管理界面(见1.1 添加化石校准信息)。
⑤ 软件会自动识别物种数量并显示在界面。
用户需要确保两个文件中的物种名称完全一致。软件会自动校验树文件与序列比对文件的物种名称是否匹配,若不一致会弹框提醒。
Tips:MCMCtree 要求进化树必须为有根树,并且在根(root)的位置必须设置时间校准点。若不满足这些要求,MDGUI 将在运行的时候弹窗提示。解决办法见下一章节。
Tips:如果是病毒序列,且序列名包含时间信息,可以勾选“Enabling tip-dating analyses”即可启用适用于tipdates的分析功能(https://github.com/abacus-gene/paml/wiki/MCMCtree#enabling-tip-dating-analyses-with-mcmctree)。

图1.1b. MDGUI自动导入上有分析的结果
① 在MDGUI界面启动时,软件会自动检测上游分析软件(如 IQ-TREE、MrBayes、FastTree)的结果文件夹,并弹出窗口供用户选择(图1.1b)。用户也可以通过点击 alignment 输入框弹出该窗口。
② 在结果文件夹列表中选择需要导入的结果文件夹。
③ 确认选择后,PhyloSuite 会自动挑选结果文件夹中的结果文件导入 MDGUI 的“Alignment”和“Treefile”文件输入框。

图1.1c. 通过输入按钮导入MDGUI
① 通过点击“Alignment”和“Treefile”输入框右侧的文件夹图标,可以打开文件管理窗口选择输入文件(图1.1c)。
② 在打开的窗口中,软件会自动过滤文件类型并展示适合作为输入文件的列表,选择并点击“打开”按钮即可导入文件。
1.1.1 添加化石校准信息

图1.2. 化石校准点信息可视化设置界面
① 用户需要先确认要添加/删除化石校准信息的节点,并右键点击该节点以打开菜单(图1.2)。
② 如果是无根树,用户可以选择根节点,右键选择“set as outgroup (root tree)”对树进行置根操作。
③ 点击“Add calibration”添加化石校准信息,弹出的界面有3个标签页(tab),其中“MCMCtree” 用于设置除根节点外其他节点的校准信息,“MCMCtree root node”专用于配置根节点的时间校准信息,“r8s”则用于设置 r8s 分析所需的时间校准信息(图1.3a)。
④ 点击“Remove calibration”可以删除该节点的所有化石校准信息。
⑤ 所有化石校准信息设置完成后,用户可以通过点击“M”按钮或关闭按钮保存所有设置。
⑥ 当用户要使用 r8s 分析时,在所有 r8s 化石校准信息设置完成后,用户可以通过点击“r”按钮保存所有设置。
Tips:如果用户使用MCMCtree进行分子定年分析,必须为根节点添加校准信息(切换至Calibration formats界面中的“MCMCtree root node”标签页或在MDGUI主页进行设置)。

图1.3a. 设置MCMCtree根节点化石校准信息
① 切换到“MCMCtree root node”标签页设置根节点的时间信息。若用户选择在界面的 Rootage 参数设置根节点时间,可忽略此选项(图1.3a)。

图1.3b. 设置MCMCtree化石校准信息
① 切换到“MCMCtree”标签页设置除根节点外其他节点的时间信息(图1.3b)。
在 MCMCtree 中常用的校准格式包括三种基本软边界类型:
- 双侧界限(between bound):格式如“>0.06<0.08”或“B(0.06, 0.08)”,表示时间介于6至8百万年之间;
- 下限(Minimum only):最小时间,格式如“>0.06”或“L(0.06)”,表示年龄至少为6百万年;
- 上限(Maximum only):最大时间,格式如“<0.08”或“U(0.08)”,表示年龄至多为8百万年。
这些都是软边界校准,意味着存在一个较小的概率(如2.5%)会使真实时间会超出设定的界限。
除了这些简单边界,还可以使用更复杂的参数化概率分布,如:
- 伽马分布(Gamma):格式如“G(alpha, beta)”;
- 偏态正态分布(skew normal):格式如“SN(location, scale, shape)”;
- 偏态t分布(skew t):格式如“ST(location, scale, shape, df)”。

图1.3c. 设置r8s化石校准信息
① 用户选择使用 r8s 组件进行分析时,需要切换到“r8s”标签页选用对应的化石信息校准格式(图1.3c)。
② 软件提供了组件本身支持的所有格式,用户只需勾选格式前方对应的勾选按钮,更改数值信息,最后点击“OK”按钮即可完成校准信息添加。
在r8s软件中,主要通过四个命令为节点年龄设置先验约束,分别是:
- calibration(calibration age):它提供软性校准,定义了节点年龄的合理范围,是最常用的设置;
- constraint:强制指定节点的年龄必须落在给定的最小值与最大值区间内;
- fixage:当某个节点年龄有极高度可信度时,可使用 fixage 将其完全固定,这将把节点年龄锁定为特定值,并基于此推算树上其他节点的年龄;
- unfixage node:可以取消 fixage 对节点的固定,使其年龄在后续分析中恢复为可被重新估算的自由变量。
1.1.2 参数设置

图1.4. MDGUI-MCMCtree参数设置
MDGUI-MCMCtree 的参数与命令行版本 MCMCtree 保持一致,但在易用性和自动化方面进行了多项改进(图1.4)。例如,当用户选择 GTR、氨基酸模型等非 MCMCtree 的默认模型时,MDGUI 会自动将“usedata”参数设置为 approximate likelihood。
① burnin(预烧代数设置):与原版需设置固定代数不同,此处用户需要设置一个比例(例如,10%)。软件会自动计算总代数中相应比例的步数作为 burnin ,并在后续分析中舍弃这部分数据。
② usedata:命令行版本 MCMCtree 仅可直接使用五种核苷酸替代模型(JC69、K80、F81、F84、HKY85),若需使用其它核苷酸模型(如T92、T93、GTR、UNREST)或氨基酸模型(如WAG、MtZoa、LG等),则必须手动配置 usedata 参数以结合 Baseml/Codeml 程序进行 Hessian matrix (矩阵)计算。具体步骤如下:首先在控制文件中设置 usedata=3 并运行 MCMCtree 以生成一个用于计算 Hessian matrix 的临时文件;随后打开生成的tmp*.ctl文件,修改aaRatefile和模型参数(如添加+F或+G)等;接着根据数据类型,使用Baseml(核苷酸)或Codeml(氨基酸/密码子)运行该配置文件,生成Hessian矩阵文件(rst2),并将其重命名为 in.BV;最后在主控制文件中设置usedata = 2 in.BV以调用mcmctree进行分歧时间估算。核苷酸模型的分析步骤虽简单一些(通常三步),但仍需手动操作。
在 MDGUI 中,用户只需将 usedata 设置为 “approximate likelihood FAST” 模式,即可一键完成上述所有操作,无需任何手动配置。当选择 “no data (prior)” 或 “seq like (exact likelihood) SLOW” 选项时,其效果分别等同于在配置文件中手动设置 usedata=0 或 usedata=1。
③ Thread(独立运行的MCMC链数):当数据量较大时(基因组数据或物种数较多),可使用该参数同时运行多条MCMC 链,分析结束后 PhyloSuite 会合并这些 MCMC 链的 sample 文件(mcmc.txt)进行统计分析,进而缩短分析所需的时间,操作原理见https://github.com/abacus-gene/paml/issues/74
④ Repeat for convergence(自动重复一次分子定年分析以便判断结果是否收敛):建议勾选此选项,软件会根据设置的 Thread 数值,将 MCMC 链平均分配到2个 repeat 文件夹中(repeat1和repeat2)。例如,当用户设置 thread 为4,repeat1 文件夹中将会运行 run1 和 run2 两条链,repeat2 中将会运行 run3 和 run4 两条链。如果用户设置 Thread 为奇数,例如5,MDGUI 会将 Thread 数量减1(4)以便分配 MCMC 链。分析完成后,每个 repeat 文件夹中会生成一个包含所有 MCMC samples 的文件(all_mcmc_runs.txt),便于用户在分析结束后使用 MCMCTracer 等工具进行收敛诊断,评估结果的可信度。

图1.4a. MDGUI-MCMCtree支持的模型列表
⑤ model(模型选择):MDGUI 在 MCMCtree 默认模型的基础上按不同序列类型提供了大量扩展的进化模型选项,并进行了分类归纳,方便用户快速查找和选择(图1.4a)。
Tips:如果用户不确定使用何种模型,可以直接选择“AUTO”选项。软件将调用ModelFinder自动选择一个最适模型。
⑥ Program for generating Hessian matrix(选择生成Hessian矩阵的程序):除了MCMCtree 自带的 Hessian matrix 计算方法,MDGUI 还整合了 IQ-TREE 进行 Hessian matrix 计算(详见 https://iqtree.github.io/doc/Dating)。相较于 MCMCtree 而言,该方法支持更多更新的序列进化模型,例如 Q.pfam、Q.plant、Q.mammal 等,包括 mixture models。用户只需在“Program for generating Hessian matrix”选项中选择“IQ-TREE for all sequences (more models)”即可。
⑦ Using mixture models(使用混合模型):若用户选择 IQ-TREE 进行 Hessian matrix 计算,可勾选混合模型选项,以解决数据的异质性问题(参考 https://iqtree.github.io/doc/Complex-Models)。

图1.4b. MDGUI-MCMCtree参数预览与修改
⑧ Preview/Edit configuration(预览/修改设置):由于 MDGUI 界面中只提供了部分 MCMCtree 的参数,若用户想要添加新的参数或者手工修改参数,可点击“Preview/Edit configuration”按钮。弹出的窗口中是根据当前所有界面设置生成的最终控制文件(mcmctree.ctl)的文本内容。用户可以在此进行检查,也可以以文本形式编辑/添加参数。确认无误后,点击“SAVE AND RUN按钮,将根据最新编辑好的参数运行 MCMCtree(图1.4b)。
1.2 运行与实时结果监控/分析
1.2.1 启动分析

图1.5. MDGUI启动分析
① 用户可以直接点击主界面上的“Start”按钮来快速启动分析(图1.5)。
② 在启动分析前,可以修改本次分析的工作路径和输出文件夹名称。若用户未设置,系统默认会在“myWorkplace/MOLDAT_results”路径下,创建一个以当前运行日期和时间命名的文件夹,所有输出文件将保存在此,方便区分不同批次的分析结果。
③ 点击该选项可设置输出结果文件夹名称。
1.2.2 实时查看运行状态

图1.6. MDGUI运行log
① 日志查看窗口:运行时会自动打开日志查看窗口(用户也可通过点击“show log”按钮打开),以显示软件当前的运行步骤和状态(图1.6)。
② 用户可以点击“Save to file”按钮并选择路径保存运行日志内容。
实时收敛分析与可视化:在运行过程中,用户可以点击“MCMCTracer”按钮,软件将会总结当前运行的 MCMC 采样数据并将结果导入到该分析工具中(图2.1)。用户可以在“Convergence”标签页直接查看分析是否收敛,若图中的点明显接近对角线 x=y 位置,说明两次分析结果接近,表明MCMC收敛情况较好。用户还可以在此工具中查看有效样本大小 (ESS)、置信区间等关键统计量,并通过观察轨迹图、散点图和直方图等图形来实时判断分析是否收敛(见章节二)。
1.2.3 中断与续跑

图1.7. MDGUI中断与续跑
① 中断分析:如果需要中途停止分析,可以点击 MDGUI 主界面的“Stop”按钮(图1.7)。MDGUI 会定时保存每条 MCMC 链的运行状态(checkpoint),以便后续进行续跑。
Tips: 如果是运行过程中断电,程序也将会执行上述操作。用户如果想中断分析的同时进行 MCMC 统计分析和时间树推导,可以选择 Stop按钮下拉菜单的“Stop the run and infer the time tree”选项。
② 续跑:如果用户需要继续某次未完成的分析,只需点击“Continue Previous Analysis”按钮(图1.7),然后选择之前中断的分析所对应的输出文件夹。软件会读取先前的运行状态(checkpoint文件),从中断的地方继续运行,直至完成设定的运行总代数。
1.2.4 MCMC统计分析

图1.8. 对分析结果进行统计分析
① 用户可以通过点击“Summarize MCMC samples and infer time tree”按钮(图1.8),如果 MCMCtree 正在运行,MDGUI 将会进行不中断 MCMCtree 的 MCMC 统计分析;如果 MCMCtree 运行已结束,该按钮将会弹出当前工作文件夹下所有先前运行完的结果文件夹,用户可以选择对任意结果文件夹进行 MCMC 统计分析,包括对 MCMC samples 进行汇总统计并生成时间树(见章节二)。
② 用户可以在分析结束 burnin 阶段后随时点击“MCMCTracer”按钮,程序将会首先执行上述①步骤的“summarize”功能,并将当前MCMC样本汇总并自动导入至 MCMCTracer 进行统计绘图,实时呈现当前MCMC样本的后验分布状态及变化趋势(见章节二)。
1.3 运行结果与输出文件

图1.9. 分子定年分析结束后弹窗选择导入
分子定年分析运行结束后,MDGUI会弹出提示框,用户可以在此处选择将结果导入至TimeTreeAnno或MCMCTracer直接可视化分析结果(图1.9)。
1.3.1 结果文件夹命名
结果文件夹的名称默认为分析启时的具体时间(格式如2025_08_22-15_45_14),以便区分每次运行。如果用户在点击 Start 按钮前手动修改过输出名称,则文件夹将以用户自定义的名字命名。
1.3.1.1文件夹内容(未勾选“Repeat for convergence”)

图1.10a. 未勾选“Repeat for convergence”的结果文件夹内容
在未勾选该选项的情况下,结果文件夹内会有多个 run 文件夹,如果 Thread 设置为2,则会有 run1、run2 两个独立的文件夹(图1.10a)。每个 run 文件夹内部存储着一次完整的 MCMC 链分析所产生的全部输出文件(如mcmc.txt、out.txt等)。
① 在 run 文件夹的同级目录下,程序会生成一个合并了所有 run 文件夹中 MCMC 样本的结果文件“all_mcmc_runs.txt”。
② 该目录下还包含统计分析生成的 log 文件(summarization.out)和时间树文件(FigTree.tre)(图1.10a)。
1.3.1.2 文件夹内容(勾选“Repeat for convergence”)

图1.10a. 勾选“Repeat for convergence”的结果文件夹内容
① 勾选“Repeat for convergence”后,结果文件夹内会有2个 repeat 文件夹:repeat1 和 repeat2(图1.10b)。
② 每个 repeat 文件夹内部包含与上述相同的、与 Thread 数对应的多个 run 文件夹(如run1、run2…)。每个 run 文件夹内是一次独立MCMC链分析的全部结果(图1.10b)。
all_mcmc_runs.txt、summarization.out 和 FigTree.tre 等文件分别生成在 repeat1 和 repeat2 文件夹中,代表2次重复运行的主要结果。MDGUI 还会将 repeat1 中的 FigTree.tre 文件复制到与 repeat 同级的目录中,若2个重复是收敛的,repeat1 和 repeat2 中的时间树应该相同或高度接近。
2. MCMCTracer
MCMCTracer 工具主要用于对 MCMC samples(如 MDGUI 运行结果)的统计分析、可视化和收敛诊断,以评估结果的可靠性(图2.1)。该界面分为 Trace 和 Convergence 两个标签页。
2.1 Trace 标签页
2.1.1 文件导入及可视化

图2.1. MCMCTracer 主界面
① 文件选择:启动 MCMCTracer 后,用户可以点击导入区的输入按钮,从弹出的对话框中选择文件并导入。
② 拖拽导入:直接将结果文件从系统文件夹拖拽到程序窗口中(任意位置皆可)。
Tips:MCMCTracer 已配置 MDGUI 分析结果的自动流程化导入。当用户启动MCMCTracer 时,软件若检测到 MDGUI 的分析结果,则会自动加载可用结果文件并显示统计与可视化结果,若用户选择在分析过程中使用MCMCTraer查看收敛性,软件同样会执行上述操作。
需要导入的文件通常是 MDGUI 结果文件夹中的 mcmc.txt(单链的运行结果)或 all_mcmc_runs.txt(多链合并的运行结果)文件。
成功导入后,文件列表区会显示所有已导入的文件名称。将鼠标光标悬停在文件名上,会显示该文件的完整存储路径,方便用户快速核对导入的文件是否正确。
③ 文件导入后,左下方的数据选择区(Traces)会自动读取并列出数据文件中所有可用的数据列,用户可以通过点击选择不同的参数行,右侧可视化区会绘制和显示对应数据。
④ 统计数据总计(Summary statistic):该部分会显示用户所选数据的统计情况,如取值区间、中位值、平均值、95%置信区间、ESS 等。
⑤ 图像显示区:该区域将用户所选数据可视化为多种统计图像,包括轨迹图 (Trace Plot)、直方图 (Histogram)、散点图 (Scatter Plot)。
⑥ 用户可以在可视化区对图像进行修改操作,如自定义图像的颜色、直方图 Bins、点样式 等视觉元素。
⑦ 用户可随时使用存储按钮,即时保存当前界面显示的图表,支持多种输出格式。
2.2 Convergence 标签页收敛性诊断
“Convergence”标签页用于自动化诊断和分析2次独立运行的 MCMC 结果之间的一致性(图2.2)。包括2次独立运行的分子定年分析(repeat1和repeat2)之间的比较,或2个独立的 MCMC 链分析(如run1和run2)结果之间的比较。

图2.2. MCMCTracer 收敛性诊断界面
2.2.1 文件导入及可视化
① 此部分的操作流程极为简化。用户无需手动选择或拖拽单个文件,只需点击输入按钮。
② 在弹出的对话框中,直接选择 MDGUI 的分析结果,程序会自动识别对应文件进行分析。
③ 软件会在数据导入后自动读取其它关键内容并展示,如 Seed、Posterior mean times。
④ 该区域会自动提取结果目录下 repeat1 和 repeat2 文件夹中的 summarization.out.txt 文件(该文件包含每个MCMCtree分析所得的节点后验均值),并据此绘制散点图,以便判断结果是否收敛。若两次运行(repeat1 和 repeat2)已收敛至同一后验分布,则在散点图中所有数据点应趋近于y=x对角线上。反之,若数据点明显偏离该对角线,则表明未收敛,此时需要延长 MCMC 链的运行时间(如增加 nsamp、burnin 参数或二者同时增加)。详见 MCMCtree官方手册(https://gensoft.pasteur.fr/docs/paml/4.9j/MCMCtree.Tutorials.pdf)。
⑤ 用户可以通过软件提供的导出功能,将最终的收敛性诊断图以多种常用图片格式(如 PNG、JPEG、SVG、PDF)保存到本地。
3. TimeTreeAnno
TimeTreeAnno 专为可视化和美化各类分子钟分析软件(如 MCMCtree、BEAST、r8s、MrBayes 等)生成的时间树而设计(图3.1)。
3.1 文件输入及可视化

图3.1. TimeTreeAnno主界面
① 启动 TimeTreeAnno 后,用户可以通过点击导入按钮,从弹出的对话框中找到并选择树文件导入。
② 用户同样可以选择拖拽时间树文件到 TimeTreeAnno 界面完成导入。例如,直接将 MCMCtree 结果文件夹中生成的“FigTree.tre”文件从系统文件夹拖拽到程序窗口内。
③ 树文件导入后,TimeTreeAnno 会弹出对话框要求用户选择所导入树文件的时间单位(1MYA/100MYA)。
④ 树文件导入后,会显示所导入的文件名。
⑤ TimeTreeAnno 提供了一个保存按钮,用户可以在得到自己想要得图像后通过该按钮导出并保存美化注释后的树图。

图3.2. TimeTreeAnno导入时间树后的美化效果
确认单位后,程序会自动解析树文件,并生成美化后的时间树。其中,系统发育树部分主要显示拓扑结构和分化时间置信区间;底部和顶部刻度线为时间标尺;100 MYA 代表时间单位;底部颜色块为地质年代(图3.2)。各图像元素设置可通过 TimeTreeAnno 右侧的控制栏完成。
① “TREE”标签页支持用户对图像的长宽比例、图像元素、颜色、背景等内容进行调整。
② “NODE”标签页会显示树的所有节点,通过不同颜色区分节点类型,还支持用户拷贝节点名称。
③ “ANNOTATION”标签页支持用户为图像添加其它注释元素,如文本注释、聚类颜色等。
Tips:“ANNOTATION”标签页内的部分注释功能尚在持续开发与完善中。
④ 用户修改参数后,可通过点击“Update Figure”按钮更新图像。
3.2 导出图像

图3.3. TimeTreeAnno保存图像
① 用户可以在“File”菜单的下拉列表中,找到“Save as”选项 ,点击后将会弹出保存设置窗口(图3.3)。
② 用户同样可以通过该按钮保存图像。
③ 用户可以选择不同格式对图像进行保存,包括:JPEG、PNG、SVG、PDF。
4. MDGUI-r8s
r8s组件的文件输入的基本操作流程与 MCMCtree 组件相似,但时间校准信息的格式和保存略有差别。
4.1 文件输入与准备

图4.1. Linux/Mac系统下的MDGUI-r8s主界面
MDGUI-r8s 插件与 MDGUI-MCMCtree 一样支持三种文件导入方式(见章节一)。
Tips: 系统平台差异:本软件在不同操作系统下集成了不同的 r8s 插件。在 Windows 系统下,由于没有打包好的 r8s 程序,MDGUI 将调用基于 Python 开发的 pyr8s 包(https://github.com/iTaxoTools/pyr8s);而在 Linux 和 MAC 系统下,则直接调用功能更为全面的原生 r8s 官方程序(需用户自行安装并指定)。因此,在不同系统中,r8s 界面的参数可能会有所不同,Linux 和 MAC 系统中的可用参数选项更为丰富和精细(图4.1)。软件会自动检测用户的操作系统,并显示与之对应的参数设置界面,用户无需进行任何手动切换。
① 序列比对文件 (Sequence Alignment File):上传对应的多序列比对文件(支持FASTA、NEXUS、PHYLIP 等格式)。
② 树文件 (Tree File):上传一个包含物种系统发育关系和枝长的树文件(建议.nwk 格式)。
③ 树文件导入后,通过“Add calibration points in tree”按钮可以打开化石校准信息可视化管理界面。
用户同样需要确保两个文件中的物种名称完全一致。软件会自动校验名称匹配情况,并在界面上显示识别到的有效物种数量。成功导入后,可通过显示的物种数量来初步确认文件是否正确读取。
4.1.1 参数设置

图4.2a. describe设置
完成文件准备后,即可进行r8s分析的参数配置
① 指定输出内容 (describe | plot):此处勾选希望软件输出的结果内容(图4.2a)。例如:勾选cladogram会输出进化树的拓扑结构;勾选“phylo_description”会输出枝长是碱基替换数的进化树;勾选“node_info”会在结果中给出进化树中每个节点的信息。
Tips:为确保参数设置的准确性,建议用户在处理分析时参考官方手册(https://image.sciencenet.cn/olddata/kexue.com.cn/upload/blog/file/2010/3/201032420201531842.0.pdf),以全面了解每个参数的具体含义。

图4.2b. MDGUI-r8s设置区
① Preview/Edit configuration(预览/修改设置):若用户想要手工修改参数,可点击“Preview/Edit configuration”按钮(图4.2b)。弹出的窗口中是根据当前所有界面设置生成的 r8s 最终运行文件(r8s_cmd_data.txt)的文本内容。用户可以在此进行检查,也可以以文本形式编辑/添加参数。确认无误后,点击窗口内的“Save and run”按钮,将根据最新编辑好的参数执行 r8s。
② Generate configuration file and run in terminal(生成配置文件并在终端窗口运行):该功能支持用户保存一个通过界面设置生成的 r8s 运行配置文件,用于在终端窗口(terminal)运行 r8s。
4.2 运行结果与输出文件
4.2.1 结果文件夹命名

图4.3. 修改r8s结果文件夹名
① 同样地,r8s 结果文件夹的名称默认为分析启动时的具体时间(格式如2025_10_10-11_18_43)。如果用户在点击 Start 按钮前手动修改过输出名称,则文件夹将以用户自定义的名字命名(图4.3)。
4.2.2 文件夹内容

图4.4. r8s结果文件夹
① 软件会根据用户在参数设置区“describe | plot”选项中的勾选情况,生成相应的时间树结果文件(图4.4)(不同设置对应的输出文件不同,如勾选“cladogram”会生成仅有拓扑结构的 nwk 树;勾选“chronogram”则会生成枝长表示时间的 nwk 树,设置详情可参考官方手册:https://image.sciencenet.cn/olddata/kexue.com.cn/upload/blog/file/2010/3/201032420201531842.0.pdf)。
② “r8s_cmd_data.txt”文件记录了用于 r8s 分析的完整运行指令和拓扑结构信息,该文件也可用于在终端窗口运行。
③ 若在“describe | plot”选项中勾选了“ratogram”,则会生成一个包含各分支演化速率信息的速率树文件“ratogram.nwk”。
5. FAQ
5.1
致谢
特别感谢广大PhyloSuite用户的反馈意见使得程序不断完善。