How to plot a curve when x(3,idx) is within a certain range

1 回表示 (過去 30 日間)
Atom
Atom 2023 年 11 月 30 日
コメント済み: Atom 2023 年 11 月 30 日
EDIT: modifies code to just load x, as otherwise there are a lot of warnings.
I want to plot a curve when x(3,idx) is whithin the range (6.077865,16.053016). How to do that? The code below makes the whole curve for (6.077865,20) red. I want to get a red curve for (6.077865,16.053016) and blue curve for (16.053016,20). Please help.
load('EP_EP(2).mat','x');
idx = x(3,:)>16.053016;
plot(x(3,idx),x(1,idx),'b', 'LineWidth',2)
hold on
idx = 6.077865<x(3,:)<16.053016;
plot(x(3,idx),x(1,idx),'r', 'LineWidth',2)
axis([0 20 0 .8]);

採用された回答

Dyuman Joshi
Dyuman Joshi 2023 年 11 月 30 日
編集済み: Dyuman Joshi 2023 年 11 月 30 日
In MATLAB, when using multiple conditions to compare, the conditions need to be specified separately -
idx = 6.077865<x(3,:) & x(3,:)<16.053016;
  1 件のコメント
Atom
Atom 2023 年 11 月 30 日
Excellent... Thanks a lot

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

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