Finding the indices of the maximum of a matrix for plotting

4 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)

Categories

Find more on Color and Styling in Help Center and File Exchange

Tags

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!