在matplotlib中设置图像背后的背景颜色

时间:2017-04-23 23:26:32

标签: python matplotlib transparency

我试图在Python中使用Matplotlib来显示图像并在其上的各个点显示文本。我想使图像部分透明,以增加文本的可见性。

但是,我希望图像背后的背景颜色是白色而不是灰色,我无法弄清楚如何让这种变化坚持下去。这就是我在的地方。

img = plt.imread("counties.png")
fig, ax = plt.subplots()
plt.axis('off')
plt.text(.6, .68,'matplotlib', ha='center', va='center', 
transform=ax.transAxes, color=(0,.16,.48), fontname='Kanit Light')
plt.text(.5, .5,'test', ha='center', va='center', transform=ax.transAxes, 
color=(0,.16,.48))
ax.imshow(img, alpha=0.05)
plt.show()

1 个答案:

答案 0 :(得分:5)

要设置图形的面部颜色(或背景颜色),请使用此功能:

fig.patch.set_facecolor('grey')

或者您可以通过其他方式致电:

plt.rcParams['figure.facecolor'] = 'grey'

结果如下: enter image description here

但是没有你的图像结果是不完整的。 但是如果要保存你的数字使用命令如下:plt.savefig('counties2.png', facecolor = fig.get_facecolor(), transparent = True)