为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 matplotlib 中生成这些水平线?

如何在 matplotlib 中生成这些水平线?

弑天下 2023-12-20 10:35:15
Matplotlib 图片我正在尝试添加水平线,如图中的那样,周期长度为 5。我该如何做呢?
查看完整描述

1 回答

?
冉冉说

TA贡献1877条经验 获得超1个赞

黑色阶跃函数可以用 绘制plt.step()。红色和蓝色水平线plt.hlines():


import matplotlib.pyplot as plt

import numpy as np


N = 150

x = np.random.uniform(0.1, 2, N).cumsum()

y = np.random.normal(0.01, 0.2, N).cumsum()

plt.step(x, y, color='black')

for color in ('red', 'blue'):

    xc = np.linspace(x[0], x[-1], N) + np.random.normal(0, 0.1, N)

    yc = np.interp(xc, x, y) + np.random.normal(0, 0.1, N)

    plt.hlines(yc, xc, xc + 5, colors=color, lw=0.5)

plt.show()

https://img1.sycdn.imooc.com/658253110001bafe06530280.jpg

查看完整回答
反对 回复 2023-12-20
  • 1 回答
  • 0 关注
  • 53 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信