Finding the indices of the maximum of a matrix for plotting

2 views (last 30 days)
Hello, I'm trying to find the indicies of the maximum value of this matrix.
When I use the auto-index finder that's built into the 'max' function, it doesn't correspond to the maximum value of the matrix when plotted.
How do I find the indicies that correspond to the maximum value of m (when plotted)?
Any help is much appreciated.
clear;clc
load('x.mat')
load('y.mat')
load('m.mat')
figure
imagesc(x,y,m)
hold on
set(gca,'YDir','normal')
[maxval,maxidxX] = max(max(m,[],1));
[~,maxidxY] = max(max(m,[],2));
plot(x(maxidxX),y(maxidxY),'w*')

Accepted Answer

KSSV
KSSV on 27 Sep 2020
Edited: KSSV on 27 Sep 2020
load('x.mat')
load('y.mat')
load('m.mat')
[X,Y] = meshgrid(x,y) ;
Z = m ;
% Make Z equal to size of X, Y
Z(1,:) = [];
Z(:,1) = [] ;
% get max value
[val,idx] = max(Z(:)) ;
% plot
pcolor(x,y,Z)
shading interp
colorbar
hold on
plot(X(idx),Y(idx),'*r')

More Answers (0)

Tags

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!