我想用我用字典(即{leaf: color}
)形式制作的彩色地图为我的星团着色.
我试过跟随https://joernhees.de/blog/2015/08/26/scipy-hierarchical-clustering-and-dendrogram-tutorial/,但由于某种原因颜色搞砸了.默认情节看起来不错,我只是想以不同方式分配这些颜色.我看到有一个link_color_func
,但当我尝试使用我的色彩图(D_leaf_color
字典)时,我得到一个错误b/c它不是一个功能.我创建D_leaf_color
了自定义与特定群集关联的叶子的颜色.在我的实际数据集中,颜色意味着什么,所以我正在转向任意颜色分配.
我不想color_threshold
在我的实际数据中使用b/c,我有更多的簇并SciPy
重复颜色,因此这个问题...
如何使用我的叶色字典来自定义树形图簇的颜色?
我做了一个GitHub问题https://github.com/scipy/scipy/issues/6346,在那里我进一步详细阐述了解释SciPy层次聚类树形图输出的叶子着色方法 ?(也许发现了一个错误...)但我仍然无法弄清楚如何实际:(i)使用树状图输出用我指定的颜色字典重建我的树形图或(ii)重新格式化我的D_leaf_color
字典link_color_func
参数.
# Init
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()
# Load data
from sklearn.datasets import load_diabetes
# Clustering
from scipy.cluster.hierarchy import dendrogram, fcluster, leaves_list
from scipy.spatial import distance
from fastcluster import linkage # You can use SciPy one too …
Run Code Online (Sandbox Code Playgroud) python machine-learning hierarchical-clustering dendrogram scipy