为了账号安全,请及时绑定邮箱和手机立即绑定

组合由seaborn生成的多个热图

组合由seaborn生成的多个热图

HUX布斯 2021-11-02 16:23:33
假设一个数据集在 3 个变量之间具有相关性。相关性是在 2 个不同时期测量的。数据格式如下:df1    A   B   CA   NaN 0.1 0.2B   0.7 NaN 0.5C   0.6 0.4 NaNdf2    A   B   CA   NaN 1   0.5B   0.5 NaN 0.6C   0.6 0.2 NaN目标是生成热图。我试过这个ax1 = sns.heatmap(df1)ax2 = sns.heatmap(df2)但这给了我单独的热图,如图第 1 部分所示。因此,如这张糟糕的图表所示,在横轴上,我想按季节划分变量。我如何实现这一目标?
查看完整描述

1 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

如何将两个数据帧合并为一个并应用多索引:


df = df1.append(df2)

#     0    1    2

#A  NaN  0.1  0.2

#B  0.7  NaN  0.5

#C  0.6  0.4  NaN

#A  NaN  1.0  0.5

#B  0.5  NaN  0.6

#C  0.6  0.2  NaN


iterables = [['A', 'B', 'C'], ['df1', 'df2']]

index = pd.MultiIndex.from_product(iterables, names=['Var', 'season'])

dfm = pd.DataFrame(df.sort_index().values, index=index)

#              0    1    2

#Var season               

#A   df1     NaN  0.1  0.2

#    df2     NaN  1.0  0.5

#B   df1     0.7  NaN  0.5

#    df2     0.5  NaN  0.6

#C   df1     0.6  0.4  NaN

#    df2     0.6  0.2  NaN


sns.heatmap(dfm, annot=True)

//img1.sycdn.imooc.com//6180f5af0001c6f506240445.jpg

查看完整回答
反对 回复 2021-11-02
  • 1 回答
  • 0 关注
  • 183 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信