gpt4 book ai didi

python - matplotlib 中带有标题、轴标签的确切图形大小

转载 作者:IT老高 更新时间:2023-10-28 21:03:16 25 4
gpt4 key购买 nike

以前有人问过类似的问题,但我的所有搜索结果都没有解决我的问题。以下面的示例代码为例:

from matplotlib.pyplot import *
fig = figure(1, figsize=(3.25, 3))
plot([0,1,5,2,9])
title('title')
xlabel('xAxis')
ylabel('yAxis')
fig.savefig('test.png',dpi=600)

生成的图形为 2040x1890 像素,即 3.4"x3.15",x-label被切断。在图像编辑器中查看 PNG 文件,似乎轴和刻度标签适合所需的大小。我试过服用与输出尺寸和请求尺寸的差异以及反馈在 (3.25 - (3.4-3.25) = 3.10,但 matplotlib 似乎添加了任意缓冲区,它仍然没有达到所需的大小。一个如何制作一个符合所需尺寸的整体图?

最佳答案

与 David Robinson 的评论一致,此处生成的数字是 3.25 x 3 英寸,由 Photoshop 测量,尽管 xlabel 确实显示截止(python 2.6 64 位中的 mpl 1.1.0,win7)

解决该问题的一种方法是使用 subplot_adjust 手动调整边距:

from matplotlib.pyplot import *
fig = figure(1, figsize=(3.25, 3))
plot([0, 1, 5, 2, 9])
title('title')
xlabel('xAxis')
ylabel('yAxis')
subplots_adjust(bottom=0.14) # <--
fig.savefig('test.png', dpi=600)

这些边距的默认值在 matploblibrc 文件中设置,您可以在那里永久修改它。在我的例子中,下边距的默认值为 0.10。

如果您的图形尺寸错误或正确,例如我的情况,您可以使用 subplot_adjust 为标签提供足够的空间。然后,如果需要,您可以计算校正以获得您想要的实际图片或图形大小。

保存图形的最终 View 取决于该图形的大小。如果您 show() 您的图形并从 matplotlib View 框架中保存它,您会在图像中获得标签截断。但是,如果您手动增加图像的大小,您将看到标 checkout 现,如果您保存它,它也会出现在保存的图像中。可以说这是所见即所得。你的身材很小,这会让你的标签被剪掉。所以另一种方法是制作一个更大的数字,也许用较低的 dpi 来保持整体大小。这也有效:

from matplotlib.pyplot import *
fig = figure(1, figsize=(6.5, 6)) # <---
plot([0, 1, 5, 2, 9])
title('title')
xlabel('xAxis')
ylabel('yAxis')
fig.savefig('test.png', dpi=300) # <---

在任何情况下,我都会认为这是一个 matplolib 错误,因为您可能期望在绘图和保存后有一个未切割的图形。

关于python - matplotlib 中带有标题、轴标签的确切图形大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8775622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com