Seaborns clustermap不适用于plt.tight_layout().
import seaborn as sns import numpy as np import pandas as pd import matplotlib.pyplot as plt np.random.seed(98) df = pd.DataFrame(np.random.rand(10,10)) cm = sns.clustermap(df) plt.tight_layout() plt.show()
出现以下错误ValueError: max() arg is an empty sequence
.我也使用sns.heatmap()
完全相同的数据集,这没有错误.有工作吗?注意:我使用的实际标签比本例中的标签要长很多,但代码太长而无法显示.谢谢你的帮助!
错误的另一部分是消息:
此图包含与tight_layout不兼容的轴,因此其结果可能不正确.
我认为tight_layout并不适用clustermap
.但是,从sns.clustermap
文档中可以看出:
返回的对象有一个savefig方法,如果要保存图形对象而不剪切树形图,则应使用该方法.
因此,在您的示例中,您可以使用cm.savefig('myfigure.png')
,它似乎执行类似的操作tight_layout
.