Matlab图跳变不连续



是否有可能绘制数据序列而不插入它们?我想保持一个数据点的值直到下一个数据点的值。

例如:

我有时间向量
time = [1 2 3 4 5 6]

datapoints =[3 0 1 4 5 6]

我希望我的绘图线从时间(1)到时间(2)是3,然后它应该在时间(2)改变值为0。基本上与时间2相对应,我的情节应该同时假设值为3和0(跳跃不连续)…

我希望我说得很清楚。

简短的回答:是的,你可以。

使用stairs()函数

time=[1 2 3 4 5 6];
datapoints = [3 0 1 4 5 6];
stairs(time,datapoints)

祝你好运!

您必须复制Times以及数据点并将它们移位以获得楼梯样式:

time = [1 2 3 4 5 6];
datapoints =[3 0 1 4 5 6];  
datapoints = [datapoints, datapoints];
[time, idx] = sort([time, time]);   
time(1) = [];   
datapoints = datapoints(idx);
datapoints(end) = [];
plot(time,datapoints)

最新更新