Seaborn 在热图中显示 3 位数字的科学记数法

Seaborn showing scientific notation in heatmap for 3-digit numbers

我正在从 pandas pivot_table 创建热图,如下所示:

table2 = pd.pivot_table(df,values='control',columns='Year',index='Region',aggfunc=np.sum)
sns.heatmap(table2,annot=True,cmap='Blues')

它创建了一个热图,如下所示。您可以看到数字并不大(最多 750),但它以科学记数法显示。如果我查看 table 本身,情况并非如此。知道如何让它以简单的符号显示数字吗?

根据 docs,正在应用参数 fmt='.2g' 因为您设置了 annot=True 因此您可以修改应用到的格式:

sns.heatmap(table2,annot=True,cmap='Blues', fmt='g')

根据docs,当annot=True时,参数fmt设置为.2g。因此,例如,如果您的数据是 float,您可以使用:

sns.heatmap(table2, annot=True, cmap='Blues', fmt='.3g')

这样一来,您就是在告诉 python 显示 3 位有效数字。要更好地理解“fmt”,请查看此答案: