在 matplotlib 中将图形尺寸设置为大于屏幕尺寸

Pet*_*ete 7 python matplotlib figure

我正在尝试创建在matplotlib期刊文章中读起来很好看的数字。我有一些较大的图形(带有子图形),我想在纵向模式下占据几乎整个页面(具体来说,6.5“x9”对于美国信纸上具有 1“边距的整页图形)。我可以设置使用参数可以轻松调整图形尺寸figsize。但是,如果我将图形尺寸设置为大于我的屏幕尺寸(我正在使用 13 英寸笔记本电脑),则图形会被压缩;具体来说,身高是一个问题。只要height下面的参数大于我的屏幕高度,保存的图形的尺寸就不会改变:

height = 9
fig, ax = plt.subplots(3, 2, figsize=(6.5, height))
plt.savefig('test.png') # size of this figure is independent of height
                        # if height > height of my screen
Run Code Online (Sandbox Code Playgroud)

matplotlib即使它超出了我的屏幕尺寸,我如何才能使用所请求的图形尺寸?我正在使用间谍软件。

And*_*Guy 3

这可能是您的绘图生成后端的问题。

您可以通过运行以下命令查看您正在使用的后端:

import matplotlib; matplotlib.get_backend()

尝试将后端更改为其他内容,例如:

import matplotlib

matplotlib.use('Agg')
Run Code Online (Sandbox Code Playgroud)

请注意,这必须在导入之前运行matplotlib.pyplot

  • 对我不起作用。我得到“UserWarning:Matplotlib 当前正在使用 agg,它是一个非 GUI 后端,因此无法显示该图。plt.show()` (2认同)