Matplotlib:如何使背景透明?

时间:2016-03-31 11:38:54

标签: python matplotlib heatmap

我遇到了使绘图本身透明的方法,但是如何使背景透明? 没有Qt有没有办法做到这一点? 我希望绘图在背景窗口上,例如,说我正在运行Chrome,我希望绘图在chrome窗口上,其内容可见。

2 个答案:

答案 0 :(得分:1)

如果将绘图另存为图像,则可以将背景设置为透明

myploy.savefig('plotname.png', transparent=True)

答案 1 :(得分:1)

透明度是一种窗口属性,因此将取决于使用的后端和操作系统。 Tkinter不太适合制作透明窗口,但由于Qt的使用被排除在问题之外,你可以得到的最好的东西可能就像下面这样,其中的诀窍是将窗口中的所有白色透明化。

import matplotlib
# make sure Tk backend is used
matplotlib.use("TkAgg")  
import matplotlib.pyplot as plt

# create a figure and some subplots
fig, ax = plt.subplots(figsize=(4,2))
ax.plot([2,3,5,1])
fig.tight_layout()

win = plt.gcf().canvas.manager.window

win.lift()
win.attributes("-topmost", True)
win.attributes("-transparentcolor", "white")

plt.show()

enter image description here