Matplotlib淡出透明文本框后面的线条

时间:2014-09-04 12:36:28

标签: text matplotlib transparency box

我想直接在一个线图上放置一个文本框,这会导致该点的线条“淡化”,以便易读。我的第一个想法是改变文本框的alpha。然而,这需要我设置一个我不想要的背景颜色(情节背景目前是透明的,我想保留)。可能存在各种形状/颜色的其他元素,它们将类似地堆叠在文本下面。理想情况下,我想要的是一个半透明的文本框,它没有自己的颜色,但会导致文本框下面的元素被半隐藏。 Alpha似乎不是要走的路,但还有其他属性我可以修改吗?

import matplotlib.pyplot as plt
import pandas as pd
pd.set_option("display.mpl_style",    'default')

fig = plt.figure()
ax1 = fig.add_subplot(1,1,1)
ax1.plot((0,1),(0.5,0.5), "--",lw=2);
ax1.plot((0,0.25,0.5,0.75,1),(0,0.25,0.5,0.75,1), "go--",markersize=20)
ax1.text(0.25, 0.5, "HardToRead", fontsize=12,ha="center",va="center", bbox=dict(boxstyle="square,pad=0.1", fc='white', ec="white", lw=1,alpha=0.1))
ax1.text(0.75, 0.5, "EasyToRead", fontsize=12,ha="center",va="center", bbox=dict(boxstyle="square,pad=0.1", fc='white', ec="white", lw=1,alpha=0.9))
ax1.text(0.5, 0.5,  "CrossTalk",  fontsize=12,ha="center",va="center", rotation=90, bbox=dict(boxstyle="square,pad=0.1", fc='white', ec="white", lw=1,alpha=0.6))

0 个答案:

没有答案