matlab图跳跃不连续

时间:2014-07-24 12:50:18

标签: matlab plot

是否可以在不插入数据的情况下绘制数据序列? 我想保留一个数据点的值,直到下一个数据点的值。

例如:

我有时间向量

time = [1 2 3 4 5 6]

datapoints =[3 0 1 4 5 6]

我想我的情节线从时间(1)到时间(2)是3,然后它应该在时间(2)中改变以取值0。 基本上对应时间2我的情节应该假设值3和0(跳跃不连续)......

我希望我很清楚。

2 个答案:

答案 0 :(得分:7)

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

使用stairs()功能。

time=[1 2 3 4 5 6];
datapoints = [3 0 1 4 5 6];

stairs(time,datapoints)
祝你好运!

答案 1 :(得分:2)

你必须复制时间和数据点,并将它们移动以便获得楼梯风格:

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)

最佳, NRAS。