建树算法结果(PhyloNode 拓扑)与项目内现有树模型 PhyloTree 之间的适配层, 同时提供遍历、叶集合提取、split(分支 bipartition)编码等树操作工具。
PhyloTreeFactory
01 Syntax
SMRUCC.genomics.Interops.Visualize.Phylip.Evolution.TreeIO.PhyloTreeFactory
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| ToTree | 1 | 将算法计算得到的树拓扑转换为 PhyloTree 对象。 |
| CreateNewick | 1 | 输出 Newick 文本(可选是否输出分支长度与 bootstrap 支持度)。 |
| EnumerateNodes | 1 | 以先序遍历的方式枚举根节点下的所有节点(包含根节点自身)。 |
| EnumerateLeaves | 1 | 枚举树中的所有叶节点。 |
| LeafLabels | 1 | 返回树中所有叶节点的名称。 |
| GetLeafNames | 1 | 递归收集指定节点子树下的所有叶节点名称。 |
| SplitKey | 1 | 为一组叶节点成员计算规范化的 split 键:取 bipartition 中较小的一侧 (两侧大小相同时取字典序较小者),从而使得同一分支在参考树与重采样树中具有相同的键。 |
| AllSplits | 1 | 计算树中每一个内部分支(非根、非叶节点)所对应的 split 键,并映射到对应的节点。 返回的键为 PhyloTreeFactory.SplitKey()) 生成的规范化字符串。 |
| TransferSupport | 1 | 将一棵树中所有内部节点的支持度数据转移到目标树(依据 split 键进行匹配)。 |
03 Members
ToTree(PhyloNode,
String)将算法计算得到的树拓扑转换为 PhyloTree 对象。
Remarks
当树中存在 bootstrap 支持度时,会自动标记该树含有支持度数据, 以便后续 PhyloTree.toTreeString() 可以输出支持度标注。
输出 Newick 文本(可选是否输出分支长度与 bootstrap 支持度)。
EnumerateNodes(PhyloNode)
以先序遍历的方式枚举根节点下的所有节点(包含根节点自身)。
EnumerateLeaves(PhyloNode)
枚举树中的所有叶节点。
LeafLabels(PhyloNode)
返回树中所有叶节点的名称。
GetLeafNames(PhyloNode)
递归收集指定节点子树下的所有叶节点名称。
SplitKey(
IEnumerable(Of String), IEnumerable(Of String))为一组叶节点成员计算规范化的 split 键:取 bipartition 中较小的一侧 (两侧大小相同时取字典序较小者),从而使得同一分支在参考树与重采样树中具有相同的键。
AllSplits(PhyloNode)
计算树中每一个内部分支(非根、非叶节点)所对应的 split 键,并映射到对应的节点。 返回的键为 PhyloTreeFactory.SplitKey() 生成的规范化字符串。
将一棵树中所有内部节点的支持度数据转移到目标树(依据 split 键进行匹配)。