使用matplotlib.pyplot绘制vlines

时间:2013-05-06 15:14:48

标签: python matplotlib plot

我正在尝试在对数图中绘制垂直线

xv1 = 10

plt.semilogy(t,P,'b')
plt.semilogy(t,Pb,'r')
plt.vlines(xv1,-1,1,color='k',linestyles='solid')
plt.xlabel('Time [s]')
plt.ylabel('P [Pa]')
plt.grid()
plt.show()

vlines没有显示在图中(对于plt.plot来说)

有什么想法吗?谢谢!

1 个答案:

答案 0 :(得分:18)

为了绘制跨越整个绘图范围的垂直线,您可以使用axvline。然后您的代码可以阅读

xv1 = 10

plt.semilogy(t, P, 'b')
plt.semilogy(t, Pb, 'r')
plt.axvline(xv1, color='k', linestyle='solid')
plt.xlabel('Time [s]')
plt.ylabel('P [Pa]')
plt.grid()
plt.show()