如何在matplotlib中保存标签和刻度区域透明但不是主要绘图区域的绘图?

Cla*_*ard 5 python matplotlib

我正在尝试保存标签区域(打印 xlabel、ylabel 和标题的区域)透明而主图(绘制数据的区域)不透明的图。

在此处输入图片说明

我在 savefig 中使用透明命令:

plt.savefig("name",tranparent=True)
Run Code Online (Sandbox Code Playgroud)

问题是这会使所有图形变得透明。

在文档中,关于透明的论点是这样说的:

透明:布尔

如果为 True,则轴块都将是透明的;除非通过 kwargs 指定 facecolor 和/或 edgecolor,否则图形补丁也将是透明的。例如,这对于在网页上的彩色背景上显示绘图很有用。退出此功能后,这些补丁的透明度将恢复为原始值。

所以我尝试改变facecoloredgecolor参数,但我找不到能够给出我想要的情节的组合。

帮助。

Imp*_*est 4

最新版本的 matplotlib存在一个错误。我不确定这是否适用于这里,因为您没有说明您正在使用哪个版本。

解决方法是使用透明的面部颜色并将其他参数保留为默认值。

fig.savefig("fname", facecolor=(1,1,1,0))
Run Code Online (Sandbox Code Playgroud)