在python中绘制从数据点到零轴的垂直线

在python中绘制从数据点到零轴的垂直线,python,matplotlib,plot,Python,Matplotlib,Plot,我想绘制从数据集的每个点到零轴的垂直线。目前的情节是这样的: values = [0.0, 0.2, 0.0, 0.4, 1.4, 0.5] times = [1, 4, 10, 12, 14, 20] plt.plot(values,times,'o') plt.show() for i in range(len(times)): plt.axvline(values[i], ymax=float(times[i]) / max(times), color='b') 如何绘制垂直

我想绘制从数据集的每个点到零轴的垂直线。目前的情节是这样的:

values = [0.0, 0.2, 0.0,  0.4, 1.4, 0.5]
times = [1, 4, 10, 12, 14, 20]
plt.plot(values,times,'o')
plt.show()
for i in range(len(times)):
    plt.axvline(values[i], ymax=float(times[i]) / max(times), color='b')
如何绘制垂直线?我在文档axvline中找到了它,但是它没有贯穿整个图形的垂直线,我不想要它:

xcoords = [0.22058956, 0.33088437, 2.20589566]
for xc in xcoords:
    plt.axvline(x=xc)

您可以使用
plt绘制从
c1=[x1,y1]
c2=[x2,y2]
的任意直线。绘制(c1,c2)
。所以要画出这些线,你可以

xcoords = [0.22058956, 0.33088437, 2.20589566]
for xc in xcoords:
    plt.plot([xc, 0], [xc, Y-VALUE])

您可以使用
plt绘制从
c1=[x1,y1]
c2=[x2,y2]
的任意直线。绘制(c1,c2)
。所以要画出这些线,你可以

xcoords = [0.22058956, 0.33088437, 2.20589566]
for xc in xcoords:
    plt.plot([xc, 0], [xc, Y-VALUE])

axvline
有一个参数
ymax
,该参数调整y范围的百分比,直到哪个vline应该持续。如果y轴较紧,则解决方案如下:

values = [0.0, 0.2, 0.0,  0.4, 1.4, 0.5]
times = [1, 4, 10, 12, 14, 20]
plt.plot(values,times,'o')
plt.show()
for i in range(len(times)):
    plt.axvline(values[i], ymax=float(times[i]) / max(times), color='b')

axvline
有一个参数
ymax
,该参数调整y范围的百分比,直到哪个vline应该持续。如果y轴较紧,则解决方案如下:

values = [0.0, 0.2, 0.0,  0.4, 1.4, 0.5]
times = [1, 4, 10, 12, 14, 20]
plt.plot(values,times,'o')
plt.show()
for i in range(len(times)):
    plt.axvline(values[i], ymax=float(times[i]) / max(times), color='b')
使用
stem
绘图 最简单的解决方案是

使用
阀杆
绘图
最简单的解决方案是


此外,如果您只想要垂直线(无标记等),请使用
plt.stem(时间、值、basefmt=''、markerfmt='')
此外,如果您只想要垂直线(无标记等),请使用
plt.stem(时间、值、basefmt=''、markerfmt='')