matplotlib 图在使用 figsize 后仍然在内部使用屏幕尺寸

matplotlib figure still internally uses screen size after using figsize

我正在使用 plt.figure(figsize=(width, height)) 来调整显示绘图时生成的 window 的大小和纵横比。 但是,我在垂直轴上的刻度注释很长,以至于它们从 window 中消失了。但是,你瞧,如果我随后手动将 window 尺寸调整为我的屏幕尺寸,它们 确实 适合我的屏幕。

因此,尽管您可以使用 figsize 选项手动修改 window 大小,但 matplotlib 仍然生成图形,就好像您要在最大化中使用它一样window。如何更改内部使用的图形大小? (我应该怎么做才能使 matplotlib 调整图像大小,使其真正适合我定义的 window?)

可能有误会。 Matplotlib 只使用一种图形尺寸,即 figsize 给出的尺寸。没有内部或外部图形大小之类的东西。

当改变 window 的大小时,你改变了图形的大小。无论您是使用 figsize=(4,4) 创建图形然后在屏幕上用鼠标将其放大,还是直接使用例如大小为(20,8).

可能是在现实中你想让图形的内容适合图形本身。
这可以使用多种机制来完成,例如plt.subplots_adjust or plt.tight_layout.