如何在matplotlib中使轴透明?

Ram*_*nez 9 python plot matplotlib

所以我有以下示例绘制图形和插图:

import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()

ax1 = fig.add_subplot(1, 1, 1)
x = np.arange(100).reshape((10, 10))
ax1.imshow(x)

ax2 = fig.add_axes([0.5, 0.5, 0.3, 0.3])
t = np.arange(0, 1, 0.01)
s = np.sin(t)
ax2.plot(t, s, linewidth=2)
Run Code Online (Sandbox Code Playgroud)

这产生了下图: 在此输入图像描述

我想要的是插图有点透明(比如alpha = 0.5).我想要他们在matplotlib文档中的图例文档中所做的事情:

在此输入图像描述

http://matplotlib.org/users/recipes.html#transparent-fancy-legends

那可能吗?有谁知道这是怎么做到的吗?

祝一切顺利,

PD正如评论中所提到的,这个问题的答案可以从对相关问题的答案中得出.它在概念上有点不同(图与轴),在这里IMO要简单得多.

Ram*_*nez 18

好吧,所以在玩了一下后我发现这可以通过控制patch属性或轴来实现.

添加以下代码会产生所需的结果:

ax2.patch.set_alpha(0.5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这是有效的,因为补丁只是数字(matplotlib用语中的艺术家),它代表了我从文档中理解的背景:

文档