使用 Plotly Python 绘制树状图

Ach*_*Ram 3 python numpy cluster-analysis dendrogram plotly

我正在尝试使用 Python 绘制树状图,最好使用 Plotly。我有一个包含各种对象聚类的数据集。我可以使用这个数据集来生成所需的数据或至少进行推断。但是,我不明白 create_dendrogram 的输入实际上是什么。该文档只是说它是一个 ndarray - 作为数组数组的观察矩阵。我熟悉 Numpy ndarrays,但我想知道数组必须包含什么。

更具体地说,值X[i][j]的意义是什么。它似乎只是 0 和 1 之间的浮点数。我在这里查看了 Python 的 Plotly API 文档 - https://plot.ly/python/dendrogram/

import plotly.plotly as py
from plotly.tools import FigureFactory as FF

import numpy as np

X = np.random.rand(10, 10)
fig = FF.create_dendrogram(X, orientation='left', labels=names)
py.iplot(fig, filename='dendrogram_with_labels')
Run Code Online (Sandbox Code Playgroud)

如果有另一种更直观的方法在 Python 中获取树状图,我也想知道。我对此很陌生,任何帮助将不胜感激。(如果我需要重新表述问题,请告诉我!)

小智 5

您可以将链接函数传递给 create_dendrogram 函数。例如:

from scipy.cluster.hierarchy import linkage

...

figure = FF.create_dendrogram(
    data_array, orientation='bottom', labels=id_label_list,
    linkagefun=lambda x: linkage(data_array, 'ward', metric='euclidean')
)
Run Code Online (Sandbox Code Playgroud)