#python #pandas #jupyter-notebook #correlation
#python #панды #jupyter-записная книжка #корреляция
Вопрос:
Я создал эту тепловую карту, чтобы визуализировать корреляции между несколькими столбцами данных за определенный период времени. Мне действительно нравится тепловая карта, но я хочу добавить коэффициенты корреляции в виде числа в каждое из полей. Кто-нибудь знает, что я должен добавить в код, чтобы сделать это?
def CorrMtx(ten_yr_bond_p4, dropDuplicates = True):
# Exclude duplicate correlations by masking uper right values
if dropDuplicates:
mask = np.zeros_like(corr_ten_yr_bond_p4, dtype=np.bool)
mask[np.triu_indices_from(mask)] = True
# Set background color / chart style
sns.set_style(style = 'white')
# Set up matplotlib figure
f, ax = plt.subplots(figsize=(11, 9))
# Add diverging colormap from red to blue
cmap = sns.diverging_palette(250, 10, as_cmap=True)
# Draw correlation plot with or without duplicates
if dropDuplicates:
sns.heatmap(corr_ten_yr_bond_p4, mask=mask, cmap=cmap,
square=True,
linewidth=.5, cbar_kws={"shrink": .5}, ax=ax)
else:
sns.heatmap(corr_ten_yr_bond_p4, cmap=cmap,
vmin=-1, vmax=1, center=0,
square=True,
linewidth=.5, cbar_kws={"shrink": .5}, ax=ax)
CorrMtx(corr_ten_yr_bond_p4, dropDuplicates = False)
Ответ №1:
Вам нужно передать anno=True в sns.heatmap
sns.heatmap(corr_ten_yr_bond_p4, annot=True, mask=mask, cmap=cmap,
square=True,
linewidth=.5, cbar_kws={"shrink": .5}, ax=ax)