我使用的虹膜数据从sci学习获得以下数据框架:
df = pd.DataFrame(data= np.c_[iris['data'], iris['target']],
columns= iris['feature_names'] + ['target'])用scatter_matrix作图,用matshow绘制相关矩阵,分别给出了矩阵图图和matshow(df.corr())图。
我的问题如下。有办法把这些图表叠起来吗?换句话说,将scatter_matrix绘制在matshow(df.corr())之上?
提前谢谢。
发布于 2017-05-11 12:51:53
我想你真正想要的是在相关矩阵的匹配图中显示的颜色中各个轴的背景颜色。
为此,我们可以通过向matplotlib颜色图提供归一化( 0..1)相关矩阵来找出颜色,并使用ax.set_facecolor改变轴背景颜色。
import seaborn.apionly as sns
import pandas as pd
import matplotlib.pyplot as plt
# taking the iris from seaborn (should be same as scikit)
df = sns.load_dataset("iris")
axes =pd.scatter_matrix(df)
corr = df.corr().values
corr_norm = (corr-corr.min())/(corr.max()-corr.min())
for i, ax in enumerate(axes.flatten()):
c = plt.cm.viridis(corr_norm.flatten()[i])
ax.set_facecolor(c)
plt.show()

https://stackoverflow.com/questions/43914911
复制相似问题