首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在matplotlib中的给定绘图上绘制垂直线

如何在matplotlib中的给定绘图上绘制垂直线
EN

Stack Overflow用户
提问于 2014-07-28 12:29:42
回答 3查看 589.5K关注 0票数 365

在给定时间表示的信号图的情况下,如何绘制标记相应时间索引的线条?

具体地说,给定一个时间索引范围为0到2.6(s)的信号图,我想为列表[0.22058956, 0.33088437, 2.20589566]绘制指示相应时间索引的垂直红线,我该如何做呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-07-28 12:34:36

添加将覆盖整个绘图窗口的垂直线而无需指定其实际高度的标准方法是plt.axvline

代码语言:javascript
复制
import matplotlib.pyplot as plt

plt.axvline(x=0.22058956)
plt.axvline(x=0.33088437)
plt.axvline(x=2.20589566)

代码语言:javascript
复制
xcoords = [0.22058956, 0.33088437, 2.20589566]
for xc in xcoords:
    plt.axvline(x=xc)

您可以使用许多可用于其他绘图命令的关键字(例如colorlinestylelinewidth ...)。如果您愿意,可以在坐标轴中传递关键字参数yminymax (例如,ymin=0.25ymax=0.75将覆盖绘图的中间半部分)。水平线(axhline)和矩形(axvspan)有相应的函数。

票数 593
EN

Stack Overflow用户

发布于 2016-03-18 23:55:04

对于多条线路

代码语言:javascript
复制
xposition = [0.3, 0.4, 0.45]
for xc in xposition:
    plt.axvline(x=xc, color='k', linestyle='--')
票数 78
EN

Stack Overflow用户

发布于 2018-09-24 00:45:45

除了上面答案中提供的plt.axvlineplt.plot((x1, x2), (y1, y2)) OR plt.plot([x1, x2], [y1, y2])之外,还可以使用

代码语言:javascript
复制
plt.vlines(x_pos, ymin=y1, ymax=y2)

x_pos处绘制一条从y1y2的垂直线,其中值y1y2在绝对数据坐标中。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24988448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档