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 Center および File Exchange2-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