您在生成热力图时使用的代码如下所示:
import numpy as np
import matplotlib.pyplot as plt
x_values = [x for x in range(5)]
y_values = [y for y in range(7)]
z_values = np.random.rand(len(y_values), len(x_values))
plt.imshow(z_values, cmap='viridis', extent=[min(x_values), max(x_values), min(y_values), max(y_values)],
origin='lower', aspect='auto')
plt.gca().invert_yaxis()
# 添加每个y轴点和每隔一个x轴点的标签
plt.yticks(np.arange(len(y_values)), y_values)
plt.xticks(np.arange(0, len(x_values), 2), x_values[::2])
plt.show()
生成的热力图示例如下所示
很显然,x轴和y轴的标签与单元格中心没有对齐。我该如何修正这个问题呢?