我需要绘制一个突出显示某些范围的图。问题是我无法使用
axvspan
来填充从上到下的跨度区域。我需要将跨越区域限制在底部,如下图所示,其中突出显示了 0.5-1.5 范围:
有没有办法在 matplotlib 中实现这一点?
您可以在
xmin
中定义矩形的边界(xmax
、ymin
、ymax
、axvspan
)。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-1.0, 2.0, 301)
y = np.sin(2.0 * np.pi * x)
plt.plot(x, y)
plt.axvspan(0.5, 1.5, ymax=0.05, color="gray")
plt.show()
请注意,
ymin
和ymax
是相对坐标(介于0和1之间)。