Matplotlib axvspan - 实心填充?

时间:2016-04-05 10:04:39

标签: python python-3.x matplotlib graphics

我使用这行代码使用matplotlib在图表上创建垂直跨度。

matplotlib.pyplot.axvspan(datetime.datetime.strptime("09-10-2015", '%d-%m-%Y'), datetime.datetime.strptime(now.strftime("%d-%m-%Y"), '%d-%m-%Y'), fill=True, linewidth=0, color='r')

但是,我希望通过图表隐藏图表上的线条。目前它就是这样做的。

enter image description here

如何填充此axvspan实心且不透明?

1 个答案:

答案 0 :(得分:1)

这与透明度无关(可以使用alpha参数进行更改)。它约为zorder(与用户的距离,较低的zorder将更远)。您需要将grid的zorder置于axvspan的zorder之下(我认为,plot下方的zorder应该低于import numpy as np import matplotlib.pyplot as plt t = np.arange(-1, 2, .01) s = np.sin(2*np.pi*t) plt.plot(t, s,zorder=4) p = plt.axvspan(1.25, 1.55, facecolor='g', alpha=1,zorder=3) plt.axis([-1, 2, -1, 2]) plt.grid(zorder=2) plt.show() 。请检查以下示例:

LEN(Fields!LIBEL_FONCTION.Value) = 0

,结果是:

Zorder of elements in matplotlib plot