SciPy - dendrogram() 方法
SciPy dendrogram() 方法引用自模块"scipy.cluster.hierarchy",该方法通过在特定高度切割簇来确定其功能。
此方法帮助我们可视化聚类图并显示排列。
语法
以下是 SciPy dendrogram() 方法的语法 −
dendrogram(res)
参数
以下是 − 的解释
- res:此参数存储 linkage() 方法,该方法接受两个参数,即 "data" 和 "method = 'type'",以生成层次聚类形式的图形。
返回值
该方法呈现树状图,这意味着它将结果作为图形视图返回。
示例 1
以下是 SciPy 示例,展示了 dendrogram() 方法的用法。
import numpy as np from scipy.cluster.hierarchy import dendrogram, linkage import matplotlib.pyplot as plt # 给定数据 data = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]) # 使用 ward 进行层次聚类 res = linkage(data, method='ward') # 创建树状图 dendrogram(res) # 显示图 plt.show()
输出
上述代码产生以下输出 −

示例 2
在这里,我们执行截断树状图的任务,它显示了最后 4 次合并。
import numpy as np from scipy.cluster.hierarchy import dendrogram, linkage import matplotlib.pyplot as plt # 输入数据 data = np.random.rand(15, 4) # 层次聚类 res = linkage(data, method='average') # 创建截断树状图 dendrogram(res, truncate_mode='lastp', p=4) # 显示图表 plt.show()
输出
上述代码产生以下输出 −

示例 3
下面的示例显示了具有颜色阈值的树状图。在这里,您将图形颜色设为橙色。
请注意,颜色阈值定义了图形的更好可见性。
import numpy as np from scipy.cluster.hierarchy import dendrogram, linkage import matplotlib.pyplot as plt # 输入数据 data = np.random.rand(15, 3) # 层次聚类 res = linkage(data, method='single') # 使用颜色阈值创建树状图 dendrogram(res, color_threshold=0.5) # 显示图 plt.show()
输出
上述代码产生以下输出 −
