D = readmatrix('test.csv');
A1 = D(:,2);
t1 = D(:,1);
t = t1;
A = A1;
Idx = ~isnan(t);
t = t(Idx); % Eliminate ‘NaN’ Values
A = A(Idx);
[Width,InitX,FinalX,MidLvl] = pulsewidth(A,t);
figure
plot(t, A)
hold on
plot(InitX, ones(size(InitX))*MidLvl, '>g')
plot(FinalX, ones(size(FinalX))*MidLvl, '<r')
hold off
grid
text(FinalX, ones(size(FinalX))*MidLvl, compose('\\leftarrow %5.3E', Width))
Producing:
The plot simply illustrates the result.
.