我正在尝试绘制一个矩阵来比较一些数据。但情节标题与子情节重叠:
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sn
def save_graph_cm(CMatrix):
# CMatrix is a dict with four 3x3 pandas DataFrame
k = 'Wine'
id = 0
cm = 1
plt.suptitle("#" + str(id) + " Confusion Matrix for " + k + " dataset")
for c_matrix in CMatrix:
plt.subplot(2, 2, cm)
sn.heatmap(CMatrix[c_matrix], annot=True, cmap="YlOrRd")
plt.title("CV - " + str(cm-1))
plt.xlabel("Predicted Classes")
plt.ylabel("Real Classes")
cm += 1
plt.tight_layout()
plt.show
我现在得到的是:
最佳答案
截至v3.3 ,matplotlib 的 tight_layout
现在可以正确显示 suptitle
:
import matplotlib.pyplot as plt
fig, axs = plt.subplots(1, 3)
for i, ax in enumerate(axs):
ax.plot([1, 2, 3])
ax.set_title(f'Axes {i}')
fig.suptitle('suptitle')
fig.tight_layout()
关于python - 使用python matplotlib时如何避免 "suptitle"和 "subplots"之间的重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57013731/