python - Python中重置时间序列的调整图

标签 python matplotlib plot

我想绘制一个向量,该向量的值是增量,并且每次达到值 100 时都会重置为 0。

是否有一种简单的方法来绘制值,而无需每次值重置为 0 时从上到下绘制线条?

目前正在使用 numpy.array 和以下代码进行绘图

plt.plot(x,y)
plt.show()

enter image description here

最佳答案

将数据拆分为单独的系列并单独绘制这些系列:

import matplotlib.pyplot as plt

X = [1,2,3,4,5,6,7,8]
Y = [0,50,100,0,25,50,75,100]

split = list()
for i,y in enumerate(Y):
    if (y == 100): split += [i,]

prev = 0
for nxt in split:
    plt.plot(X[prev:nxt+1],Y[prev:nxt+1],c='b')
    prev = nxt+1

plt.show()

enter image description here

关于python - Python中重置时间序列的调整图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38426448/

相关文章:

python - 如何将结果值显示在轴框之外

python - 泡沫发送无属性

python - 简单的肥尾对数分箱

python - xlsxwriter 安装但 "No module named xlsxwriter"心理错误

python - 山蟒的 3D 表面图

python - matplotlib 中带有图例和随机点顺序的散点图

python - 在 pandas 数据框中绘制条形图

r - 使用 ggplot2 的 Hodogram

python - Matplotlib:在注释上方渲染补丁

python - 使用 Boto3 使用自定义日志记录信息为 get_object 创建一个预签名的 S3 URL?