contourf min max is it possible?

I have a large matrix Cp and using contourf(Cp) Is it possible to mark min and max values in the plot ?

Answers (4)

Here's an example you can run. If Cp is a matrix like this:
Cp = peaks(1000);
and you want to make a contourf plot, specify the values of the contour lines. Here I'm doing -3 to 2 at intervals of 0.75.
contourf(Cp,-3:0.75:2)
[minCp, minidx] = min(Cp(:));
[minrow, mincol] = sub2ind(size(Cp), minidx);
minleg = sprintf('Minima @ (%d,%d) = %.2f', mincol, minrow, minCp);
[maxCp, maxidx] = max(Cp(:));
[maxrow, maxcol] = sub2ind(size(Cp), maxidx);
maxleg = sprintf('Maxima @ (%d,%d) = %.2f', maxcol, maxrow, maxCp);
hold on
lh = plot( mincol, minrow, 'g+', maxcol, maxrow, 'r+', 'MarkerSize', 15);
legend(lh, {minleg, maxleg} );
hold off

1 Comment

Walter I am getting an error trying your solution

Sign in to comment.

Casper Stroem
Casper Stroem on 10 Oct 2017
here is my contour plot 551x49 matrix, and i would like to show min and max value of Cp the exact position on the plot
Casper Stroem
Casper Stroem on 10 Oct 2017
Walter I am getting an error trying your solution

1 Comment

It should be:
[maxrow, maxcol] = ind2sub(size(Cp), maxidx);
and not
[maxrow, maxcol] = sub2ind(size(Cp), maxidx);

Sign in to comment.

Categories

Tags

Asked:

on 10 Oct 2017

Commented:

on 25 Dec 2020

Community Treasure Hunt

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

Start Hunting!