Python matplotlib如何在子批次中正确打印文本

Python matplotlib如何在子批次中正确打印文本,python,matplotlib,Python,Matplotlib,此图像通过以下方式打印: subplot(1,2,1) hist(...) subplot(1,2,2) text(...) 但我不想要第二个情节的边界,我想要在情节左上角的文本。我该怎么做呢?试试这个: subplot(1,2,1) hist(...) ax2 = subplot(1,2,2) ax2.set_xticks([]) ax2.set_yticks([]) for spine in ax2.spines.values(): spine.set_visible(False)

此图像通过以下方式打印:

subplot(1,2,1)
hist(...)
subplot(1,2,2)
text(...)
但我不想要第二个情节的边界,我想要在情节左上角的文本。我该怎么做呢?

试试这个:

subplot(1,2,1)
hist(...)
ax2 = subplot(1,2,2)
ax2.set_xticks([])
ax2.set_yticks([])
for spine in ax2.spines.values():
    spine.set_visible(False)
ax2.invert_yaxis()
ax2.text(..., verticalalignment="top")
更新:

正如评论中指出的,您也可以这样做:

subplot(1,2,1)
hist(...)
ax2 = subplot(1,2,2)
ax2.axis("off")
ax2.invert_yaxis()
ax2.text(..., verticalalignment="top")

虽然这也将删除默认的轴背景(取决于您的设置和Matplotlib版本,这可能会给您留下灰色背景色)。

谢谢,这非常完美。为此,您可以在第二个绘图上使用
plt.axis('off')
。是的,我检查了axis API,并将其替换为
ax2.set\u axis\off()
为什么要
反转_yaxis()
?@tom,以便文本将按照OP的要求显示在绘图的上部(似乎原点或其附近的点正被用作文本的坐标)。