Простая раскраска дипрограмм Сципи - PullRequest
0 голосов
/ 04 февраля 2019

Я пытаюсь создать монохромную (например, черным по белому) дендрограмму с помощью 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

Здесь - это вопрос, который должен решить эту проблему, но я не мог понять его оченьясно.

Есть намеки или предложения?

1 Ответ

0 голосов
/ 04 февраля 2019

Одним простым способом было бы установить 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

...