类文档
某个数据集的层次聚类(树状图)。
层次聚类意味着我们不仅知道元素如何分离成组,还知道单个元素如何合并成更大子组的确切历史。
此类内部通过一个 n 行 2 列的矩阵(或更精确地说,一个由大小为 2 的列表组成的列表)来表示层次结构。这与原始格式完全相同,该格式由igraph的 C 核心。矩阵的第 i 行包含在时间步 i 合并的两个聚类的索引。合并后的组将由 ID n + i 表示,其中 i 从 1 开始。在后续步骤中,将引用合并组的 ID,而不是其任何单个成员的 ID。因此,小于或等于 n 的 ID(其中 n 是矩阵中的行数)表示数据集的原始成员(ID 从 0 到 n),而从 n + 1 开始的 ID 表示合并组。例如,请查看一个给定五节点聚类的树状图和内部表示。
0 -+ | 1 -+-+ | 2 ---+-+ <====> [[0, 1], [3, 4], [2, 5], [6, 7]] | 3 -+ | | | 4 -+---+---
方法 | __init__ |
创建层次聚类。 |
方法 | __plot__ |
在给定的 Cairo 上下文或 matplotlib Axes 上绘制树状图。 |
方法 | __str__ |
未文档化 |
方法 | format |
将树状图格式化为外部格式。 |
方法 | names |
设置树状图中节点的名称 |
方法 | summary |
返回树状图的摘要。 |
属性 | merges |
以矩阵格式返回已执行的合并 |
属性 | names |
返回树状图中节点的名称 |
静态方法 | _convert |
将聚类的矩阵表示转换为元组表示。 |
方法 | _traverse |
对合并树进行中序遍历。 |
实例变量 | _merges |
未文档化 |
实例变量 | _names |
未文档化 |
实例变量 | _nitems |
未文档化 |
实例变量 | _nmerges |
未文档化 |
在
igraph.VertexDendrogram
中重写在给定的 Cairo 上下文或 matplotlib Axes 上绘制树状图。
支持的关键字参数有
- 方向:树状图的方向。必须是以下值之一从左到右, 从下到上, 从右到左或从上到下。单个元素总是放置在前者边缘,合并操作向后者边缘进行。可能的别名水平 = 从左到右, 垂直 = 从下到上, lr = 从左到右, rl = 从右到左, tb = 从上到下, bt = 从下到上。默认值为从左到右.
将树状图格式化为外部格式。
当前只支持 Newick 格式。
示例
>>> d = Dendrogram([(2, 3), (0, 1), (4, 5)]) >>> d.format() '((2,3)4,(0,1)5)6;' >>> d.names = list("ABCDEFG") >>> d.format() '((C,D)E,(A,B)F)G;'
返回树状图的摘要。
摘要包括叶子和分支的数量,以及树状图的 ASCII 艺术表示(除非它太大)。
参数 | |
详细程度 | 确定是否应打印树状图的 ASCII 表示。详细程度为零时仅打印叶子和分支的数量。 |
最大叶子数 | 在 ASCII 表示中打印的最大叶子数量。如果树状图的叶子数量超过此限制,则即使详细程度大于或等于 1,也不会打印 ASCII 表示。 |
返回 | |
树状图的摘要字符串。 |