フィルターのクリア

Ploting same y axis with two colors

1 回表示 (過去 30 日間)
Gökberk Kaya
Gökberk Kaya 2023 年 10 月 23 日
コメント済み: Dyuman Joshi 2023 年 10 月 26 日
Assuming there is matrix 10x2, which is called HW. First collumn values will be the X axis. Second collumn is [1,4,5,7,2,24,8,9,18,11] and will be in Y axis. In the plot, higher y values than average will be in different color than lower y values. I wrote this code which does not work due to numbers does not match and I am unable to find a proper plot function. I cannot use programming (such as: if statements). By the way X also randomly distributed.
I need them in one line. Such as from 1 to 2 (first 5 element) line is red than to 6th element, 24, blue and goes like this (r,b,r,b)
HWT = find(HW(:,1)>=mean(HW(:,1)))
HWS = find(HW(:,1)<=mean(HW(:,1)))
plot(HW(:,1),HW(HWT,2),"Color","r",HW(HWS,2),"Color","b")
Is there any plot function to solve this.
Thank you for your help.

採用された回答

Dyuman Joshi
Dyuman Joshi 2023 年 10 月 23 日
HW = [rand(10,1) [1;4;5;7;2;24;8;9;18;11]];
%Mean value
m = mean(HW(:,2));
%Comparison with mean
idx1 = HW(:,2) >= m;
idx2 = ~idx1;
%Use the indices to plot the corresponding values
plot(HW(idx1,1), HW(idx1,2), 'r', HW(idx2,1), HW(idx2,2), 'b')
%Showing the average value
yline(m, 'k')
  7 件のコメント
Gökberk Kaya
Gökberk Kaya 2023 年 10 月 26 日
Yes, Thank you for your help.
Dyuman Joshi
Dyuman Joshi 2023 年 10 月 26 日
You are welcome :)

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2023 年 10 月 24 日
  1 件のコメント
Gökberk Kaya
Gökberk Kaya 2023 年 10 月 26 日
thank you a lot

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

カテゴリ

Help Center および File ExchangeLine Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by