如何从下图中删除标签和相应的列/行(空白)?在这种情况下,in对应于 a 行和 l 列。
mask = np.zeros_like(corr, dtype=np.bool)
mask[np.triu_indices_from(mask)] = True
f, ax = plt.subplots(figsize=(12, 10))
cmap = sns.diverging_palette(220, 10, as_cmap=True)
corr = scaled_df.select_dtypes(include = ['float64', 'int64']).corr()
sns.heatmap(corr, mask=mask, cmap='inferno', vmin = -0.1, vmax=0.8, square=True)
plt.axvline(1.0, color='white', linestyle = '-', linewidth = 2.5, alpha = 1.0)
答案 0 :(得分:1)
这里有两种相当简单的方法来解决这个问题:
A。将有效/所需的数据子集传递给绘图仪
corr = np.random.rand(10,10)
mask = np.zeros_like(corr, dtype=np.bool)
mask[np.triu_indices_from(mask)] = True
sns.heatmap(corr[1:,:-1], mask=mask[1:,:-1], cmap='inferno', vmin = -0.1, vmax=0.8, square=True)
B。渲染后,调整图的限制
ax = sns.heatmap(corr, mask=mask, cmap='inferno', vmin = -0.1, vmax=0.8, square=True)
ax.set_xlim(0,9)
ax.set_ylim(10,1)
尚不清楚您是否始终具有三角形有效区域,但是您可以检测到 您根据蒙版中所有设置的行从蒙版中获得的矩阵,以及 列。但是对于源自triu(或tril)的有效区域,限制仅是开始/结束的1分。