How can I plot the maximum values of the double matrix ?
3 ビュー (過去 30 日間)
古いコメントを表示
I have a double matrix (200 x 200 double). When I plot it it looks like this. 

I want to get the maximum values of this plot like shown in the example.

I have tried to loop inside the elements with the length of the matrix and use findpeaks and assign the maximums to the indexes.
for i = 1:length(E2_gc_comparisn)
[pks,locs,fwhm,proms] = findpeaks(E2_gc_comparison(:,i),XX);
[~,j] = max(pks);
angle(i) = locs(j);
end
%Where E2_gc_comparison is my matrix
%Another way to do it to use
[M,I] = max(E2_gc_comparison)
But when I try to plot it I get:

%Another way that I tried
Val = unique(E2_gc_comparison)
And also got the same graph. How can I plot the matrix so I have something like this.

0 件のコメント
採用された回答
Joel Lynch
2021 年 6 月 9 日
Max() has an optional third argument that determines the index along which to take the maximum. So for a 10x20 matrix A,
A_max(1,1:20) = max( A, [], 1 ) % Take maximum of all rows, at each column of A
and
A_max(1:10,1) = max( A, [], 2 ) % Take maximum of all columns, at each row of A
So for your problem, you should try this:
[M,I] = max(E2_gc_comparison,[],idx) % where idx = 1 or 2, depending on size of E2_gc_comp
5 件のコメント
Joel Lynch
2021 年 6 月 9 日
When I load the MAT file and run
plot(max(E2_gc_comparisn,[],2))
I get the following plot:

Is this not correct?
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!