How to plot lines as separated segments?

조회 수: 8 (최근 30일)
Serbring
Serbring 2019년 9월 1일
댓글: Serbring 2019년 9월 1일
Hi all,
I have a signal and a need to highlight the portion of the signal which meets a specific condition. I have found two ways to accomplish it, plotting line or plotting markers. With line, I have the problem that joint segments (the horizontal segments in the plotted figure below) are created and this may seem that this segments are part of the dataset. On the other hand, with markers is graphically bad-looking, especially when there are abrupt changes in the signal. How can I make the plot on bottom with lines rather than markers?
Thank you
t=[0:0.01:10];
a=sin(2*pi*t);
figure
subplot(2,1,1)
plot(t,a)
hold on
plot(t(a>0.9),a(a>0.9))
title('with line')
subplot(2,1,2)
plot(t,a)
hold on
plot(t(a>0.9),a(a>0.9),'.')
title('with marker')
untitled.jpg

채택된 답변

Walter Roberson
Walter Roberson 2019년 9월 1일
t2 = t;
a2 = a;
mask = a<=0.9;
t2(mask) =nan;
a2(mask) =nan;
plot(t2, a2);
  댓글 수: 2
Walter Roberson
Walter Roberson 2019년 9월 1일
This can be simplified to
a2 = a;
a2(a2 <= 0.9) = nan;
plot(t, a2)
Serbring
Serbring 2019년 9월 1일
Much simpler than I could think!
Thanks!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Line Plots에 대해 자세히 알아보기

태그

제품


릴리스

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by