如何将标题移到热图中的底部

How to move the title to the bottom in a heatmap

我有以下创建热图的代码:

import matplotlib.pyplot as plt
import seaborn as sns

# Load dataset from seaborn
flights = sns.load_dataset('flights')
flights = flights.pivot('month', 'year', 'passengers')

# Plot heatmap
fig1, ax1 = plt.subplots(figsize=(8,8))
ax = sns.heatmap(flights, annot=True, fmt='d', cbar_kws={'label': 'Passenger Numbers'})

# Rotate x-axis labels
ax1.set_xticklabels(ax1.get_xticklabels(), rotation=45)

# Set font size for colorbar title
ax1.figure.axes[-1].yaxis.label.set_size(12)
# Set font size for colorbar labels
ax1.figure.axes[-1].tick_params(labelsize=10)

# Set font for x-axis labels
plt.xticks(fontsize=12, fontstyle='oblique')
# Set font for y-axis labels
plt.yticks(fontsize=12, fontstyle='oblique')
# Set title
plt.title('Heatmap Title', fontsize=39, weight='bold')   # What needs to change here?  

# Bold 'February' in y-axis
for label in ax.get_yticklabels():
    if label.get_text() == 'February':
        label.set_weight('bold')

plt.show()

如何移动标题使其位于热图的底部?我试图通过使用 y=-0.01 来遵循这个 但它似乎不起作用?

ax.text(x,y,z)可以用'set_title()和'plt.title'只设置标题的上、左、右、中,也可以用ax.text(x,y,z) 来设置标题。您可以使用 ax.textax.annotation.

# plt.title('Heatmap Title', fontsize=39, weight='bold')   # What needs to change here?  
ax.text(1, 14, 'Heatmap Title',fontsize=39, weight='bold')