我正在使用 matplotlib 制作一些图表,不幸的是我无法在没有白色背景的情况下导出它们。
换句话说,当我导出这样的图并将其放置在另一幅图像之上时,白色背景隐藏了它背后的内容,而不是让它显示出来。如何导出具有透明背景的绘图?
原文由 Cupitor 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在使用 matplotlib 制作一些图表,不幸的是我无法在没有白色背景的情况下导出它们。
换句话说,当我导出这样的图并将其放置在另一幅图像之上时,白色背景隐藏了它背后的内容,而不是让它显示出来。如何导出具有透明背景的绘图?
原文由 Cupitor 发布,翻译遵循 CC BY-SA 4.0 许可协议
PNG 文件可以处理透明度。所以你可以使用这个问题 将绘图保存到图像文件而不是使用 Matplotlib 显示它,以便将你的图形保存为 png
文件。
如果您想将所有白色像素变为透明,还有另一个问题: Using PIL to make all white pixels transparent?
如果你想把整个区域变成透明的,那么就会有这个问题:然后使用 PIL 库,就像这个问题 Python PIL: how to make area transparent in PNG? 以使您的图表透明。
原文由 Stephane Rolland 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
2 回答843 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
使用带有关键字参数
transparent=True
的 matplotlibsavefig
函数将图像保存为 png 文件。结果:
当然,该图并不能证明透明度。这是使用 ImageMagick
display
命令显示的 PNG 文件的屏幕截图。棋盘图案是通过 PNG 文件的透明部分可见的背景。