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 ExchangeBar Plots についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by