gpt4 book ai didi

python - 如何使用自定义顺序对 Seaborn 热图的列进行排序?

转载 作者:行者123 更新时间:2023-12-05 04:53:44 35 4
gpt4 key购买 nike

我想按照每列从左到右升序的平均值对这个热图的列进行排序(所以这里波士顿凯尔特人队将是最左边的列,等等)。似乎默认的 x 轴排序顺序是按字母顺序排列的。我读过一些类似的问题,但没有一个能帮助我解决这个问题。

enter image description here

最佳答案

您可以在将数据帧输入 sns.heatmap 之前使用 reindex 对其重新排序。

例如:

import numpy as np
import pandas as pd
import seaborn as sns

np.random.seed(999)

df = pd.DataFrame(np.random.uniform(0,1,(7,4)),
index=np.arange(2014,2021),
columns = ['Atalanta Hawks','Boston Celtics',
'Cleveland Cavaliers','Denver Nuggets']
)

所需顺序:

df.mean().sort_values()

Denver Nuggets 0.332388
Boston Celtics 0.472204
Atalanta Hawks 0.477551
Cleveland Cavaliers 0.538914

重新排序和绘图:

sns.heatmap(df.reindex(df.mean().sort_values().index, axis=1),
cmap="coolwarm",annot=True)

或者:

sns.heatmap(df[df.mean().sort_values().index],cmap="coolwarm",annot=True)

enter image description here

关于python - 如何使用自定义顺序对 Seaborn 热图的列进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65964660/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com