具有分层聚类的Python热图TypeError:dendrogram()得到了一个意外的关键字参数' color_list'

时间:2016-12-16 17:43:47

标签: python pandas numpy seaborn

我正在使用python seaborn进行heatmap绘图和层次聚类。    这是我试过的,

import pandas as pd, seaborn as sns
import scipy.spatial as sp, scipy.cluster.hierarchy as hc
from sklearn.datasets import load_iris
sns.set(font="monospace")

iris = load_iris()
X, y = iris.data, iris.target
DF = pd.DataFrame(X, index = ["iris_%d" % (i) for i in range(X.shape[0])], columns = iris.feature_names)

DF_corr = DF.T.corr()
DF_dism = 1 - DF_corr   # distance matrix
linkage = hc.linkage(sp.distance.squareform(DF_dism), method='average')
sns.clustermap(DF_dism, row_linkage=linkage, col_linkage=linkage)

它抛出以下错误,我正在粘贴追溯  TypeError:dendrogram()得到了一个意外的关键字参数' color_list'

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-23-4da2c090d592> in <module>()
     11 DF_dism = 1 - DF_corr   # distance matrix
     12 linkage = hc.linkage(sp.distance.squareform(DF_dism), method='average')
---> 13 sns.clustermap(DF_dism, row_linkage=linkage, col_linkage=linkage)

/home/alva/Tools/anaconda3/lib/python3.4/site-packages/seaborn/matrix.py in clustermap(data, pivot_kws, method, metric, z_score, standard_scale, figsize, cbar_kws, row_cluster, col_cluster, row_linkage, col_linkage, row_colors, col_colors, mask, **kwargs)
   1137                         row_cluster=row_cluster, col_cluster=col_cluster,
   1138                         row_linkage=row_linkage, col_linkage=col_linkage,
-> 1139                         **kwargs)

/home/alva/Tools/anaconda3/lib/python3.4/site-packages/seaborn/matrix.py in plot(self, metric, method, colorbar_kws, row_cluster, col_cluster, row_linkage, col_linkage, **kws)
    976         colorbar_kws = {} if colorbar_kws is None else colorbar_kws
    977         self.plot_dendrograms(row_cluster, col_cluster, metric, method,
--> 978                               row_linkage=row_linkage, col_linkage=col_linkage)
    979         try:
    980             xind = self.dendrogram_col.reordered_ind

/home/alva/Tools/anaconda3/lib/python3.4/site-packages/seaborn/matrix.py in plot_dendrograms(self, row_cluster, col_cluster, metric, method, row_linkage, col_linkage)
    901             self.dendrogram_row = dendrogram(
    902                 self.data2d, metric=metric, method=method, label=False, axis=0,
--> 903                 ax=self.ax_row_dendrogram, rotate=True, linkage=row_linkage)
    904         else:
    905             self.ax_row_dendrogram.set_xticks([])

/home/alva/Tools/anaconda3/lib/python3.4/site-packages/seaborn/matrix.py in dendrogram(data, linkage, axis, label, metric, method, rotate, ax)
    652     plotter = _DendrogramPlotter(data, linkage=linkage, axis=axis,
    653                                  metric=metric, method=method,
--> 654                                  label=label, rotate=rotate)
    655     if ax is None:
    656         ax = plt.gca()

/home/alva/Tools/anaconda3/lib/python3.4/site-packages/seaborn/matrix.py in __init__(self, data, linkage, metric, method, axis, label, rotate)
    483         else:
    484             self.linkage = linkage
--> 485         self.dendrogram = self.calculate_dendrogram()
    486 
    487         # Dendrogram ends are always at multiples of 5, who knows why

/home/alva/Tools/anaconda3/lib/python3.4/site-packages/seaborn/matrix.py in calculate_dendrogram(self)
    568         """
    569         return hierarchy.dendrogram(self.linkage, no_plot=True,
--> 570                                     color_list=['k'], color_threshold=-np.inf)
    571 
    572     @property

非常感谢任何支持或建议

0 个答案:

没有答案