簡體   English   中英

Matplotlib:如何使背景透明?

[英]Matplotlib: How to make the background transparent?

我遇到了使繪圖本身透明的方法,但是如何使背景透明? 沒有Qt,有沒有辦法做到這一點? 我希望繪圖位於背景窗口上方,例如,說我正在運行Chrome,我希望繪圖位於chrome窗口上方,其內容可見。

如果將圖另存為圖像,則可以將背景設置為透明

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

透明度是一個窗口屬性,因此將取決於使用中的后端和操作系統。 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()

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM