Scipy树状图的简单着色

时间:2019-02-04 02:04:14

标签: python scipy hierarchical-clustering

我正在尝试使用Scipy创建单色(例如,白底黑字)树状图。在Scipy文档之后,我一直在使用set_link_color_pallete函数,但一直只获得黑色中的一组,而其余的树状图则为蓝色(请参见下图)。

这是我的测试代码:

import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster import hierarchy

ytdist = np.array([662., 877., 255., 412., 996., 295., 468., 268.,
                    400., 754., 564., 138., 219., 869., 669.])
Z = hierarchy.linkage(ytdist, 'single')
hierarchy.set_link_color_palette(['k', 'k', 'k', 'k', 'k'])
dn = hierarchy.dendrogram(Z)
plt.show()

enter image description here

Here是一个应该解决此问题的问题,但我不太清楚。

有任何提示或建议吗?

1 个答案:

答案 0 :(得分:1)

一种简单的方法是在color_threshold处设置0,然后将above_threshold_color设置为'k',如下所示:

import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster import hierarchy

ytdist = np.array([662., 877., 255., 412., 996., 295., 468., 268.,
                    400., 754., 564., 138., 219., 869., 669.])
Z = hierarchy.linkage(ytdist, 'single')
dn = hierarchy.dendrogram(Z, color_threshold=0, above_threshold_color='k')
plt.show()

Monocolor Dendrogram