如何在海边对齐旋转的ytick标签?

时间:2017-11-11 06:02:04

标签: python matplotlib plot alignment seaborn

我试图通过seaborn绘制混淆矩阵,但是当它们旋转到90度时无法将yticklabel居中对齐。虽然 ha 在没有旋转的情况下工作但是在旋转时失败。这是最小的工作示例 -

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

cmat = np.matrix([[2, 3], [4, 5]])
fig, ax = plt.subplots(figsize=(4, 4))

sns.heatmap(cm_greina, annot=True, xticklabels=['Faulty', 'Healthy'], cbar=False, ax=ax)
ax.set_yticklabels(['Faulty', 'Healthy'], rotation=90, ha='center')

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您可能希望使用垂直对齐,而不是水平对齐:

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

cmat = np.matrix([[2, 3], [4, 5]])
fig, ax = plt.subplots(figsize=(4, 4))

sns.heatmap(cmat, annot=True, xticklabels=['Faulty', 'Healthy'], cbar=False, ax=ax)
ax.set_yticklabels(['Faulty', 'Healthy'], va='center', rotation = 90, position=(0,0.28))
plt.show()