matplotlib 如何设置图形特定区域的背景色?

eimct9ow  于 2023-06-23  发布在  其他
关注(0)|答案(1)|浏览(186)

我已经设法用下面的代码绘制了一系列点:

plt = pp.figure()
for i in range(spt.shape[1]):
    spktrain = spt[0,i]
    for trial in spktrain:
        non_z = np.nonzero(trial)
        non_z = non_z[0]
        pp.plot(t[non_z], trial[non_z], 'bo')

我想在图中交替放置白色和灰色背景带,以便将外部for循环的每次迭代中的数据分开。换句话说,我希望来自每个“spktrain”的数据都有自己的背景颜色(数据不重叠)。
如何更改特定区域中图形的背景颜色?

sczxawaw

sczxawaw1#

你可以像这样使用axhspan和/或axvspan

import matplotlib.pyplot as plt

plt.figure()
plt.xlim(0, 5)
plt.ylim(0, 5)

for i in range(0, 5):
    plt.axhspan(i, i+.2, facecolor='0.2', alpha=0.5)
    plt.axvspan(i, i+.5, facecolor='b', alpha=0.5)

plt.show()

相关问题