How to show the plot with the highest value?

조회 수: 2 (최근 30일)
Randomdude123
Randomdude123 2020년 10월 22일
댓글: Walter Roberson 2020년 10월 25일
Hey! How am I supposed to only show the plot with the highest values for h. The graph should show the plot with abs(T1) first and then change to abs(T2) when they intersect and abs(T2) get higher than abs(T1). With the following code I get both plots in all values
plot(h,abs(T1),'b')
hold on
plot(h,abs(T2),'g')
Thanks!
  댓글 수: 6
Star Strider
Star Strider 2020년 10월 22일
Rik — Thank you!
Walter Roberson
Walter Roberson 2020년 10월 25일
(Mathworks says we have to remove names upon request. Legal reasons, I guess.)

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

채택된 답변

Star Strider
Star Strider 2020년 10월 22일
One approach would be ‘logical indexing’:
h = linspace(0,25);
T1 = 20 - h;
T2 = 10 + h;
Lv = abs(T2) > abs(T1); % Logical Index Vector
figure
plot(h,abs(T1),'b', 'LineWidth',2)
hold on
plot(h,abs(T2),'g', 'LineWidth',2)
plot(h(~(Lv)),abs(T1(~Lv)), '--r', 'LineWidth',1.0)
plot(h(Lv),abs(T2(Lv)), '--r', 'LineWidth',1.0)
hold off
Experiment to get the result you want.

추가 답변 (1개)

the cyclist
the cyclist 2020년 10월 22일
plot(h,max(abs(T1),abs(T2)))

카테고리

Help CenterFile Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by