Python Matplotlib将画布大小调整为内容/删除空白

Python Matplotlib将画布大小调整为内容/删除空白,python,canvas,matplotlib,Python,Canvas,Matplotlib,有没有办法使Matplotlib自动调整画布大小以适应打印内容 这个例子说明了这个问题: fig = plt.figure(frameon=False, tight_layout=True) ax = fig.add_axes([0, 0, 1, 1]) ax.axis('off') plt.text(0.1,0.1,"foobar") plt.savefig("bla.png", dpi=300, bbox_inches="tight") 我得到了这样的东西: 我想去掉所有的空白,所以只需

有没有办法使Matplotlib自动调整画布大小以适应打印内容

这个例子说明了这个问题:

fig = plt.figure(frameon=False, tight_layout=True)
ax = fig.add_axes([0, 0, 1, 1])
ax.axis('off')
plt.text(0.1,0.1,"foobar")
plt.savefig("bla.png", dpi=300, bbox_inches="tight")
我得到了这样的东西:

我想去掉所有的空白,所以只需要打印文本。 我已经试过了所有的
tight_layout
命令,同样我也发现了,但是没有任何东西对画布的大小产生影响


我知道这取决于在
图中传递的参数。add_axes
,但我没有找到提前获得打印文本大小的方法来添加具有相应大小的轴。

在我看来,实现这种效果的最简单方法是使用
ImageMagick
或类似工具裁剪生成的文件。
tight\u layout
知道它所绑定的轴(
ax.axis('off'))
没有删除轴,它只是使它们不可见。有一个PR可以使
布局紧凑
忽略不可见的艺术家,但我不记得它是否合并了。