我正在尝试使用 matplotlib 在我的绘图上添加一条从 x 轴开始并在绘图线上结束的垂直线,但我没有找到正确的解决方案。
我的 MWE 有 3 个子图。问题涉及红线和绿线。我想要一条垂直线,从红色开始,到绿色结束。我怎么能这样做?
我还想在每个轴上添加一个 xtick 和一个 ytick,其中包含垂直线和水平线的值。
from scipy import signal
import matplotlib.pyplot as plt
sys = signal.TransferFunction([1], [1, 1])
w, mag, phase = signal.bode(sys)
fig, axs = plt.subplots(3, 1, sharex=True)
fig.subplots_adjust(hspace=0)
axs[0].semilogx(w, mag)
axs[1].semilogx(w, phase)
axs[1].axhline(y=-40., xmax=1,color='grey')
axs[1].axvline(x=.85, color='red')
axs[2].semilogx(w, phase)
axs[2].axhline(y=-40., xmax=1,color='grey')
axs[2].vlines(.85, axs[2].get_ylim()[0], -40., color='green')