contourf min max is it possible?

39 views (last 30 days)
Casper Stroem
Casper Stroem on 10 Oct 2017
Commented: Pronoy Das on 25 Dec 2020
I have a large matrix Cp and using contourf(Cp) Is it possible to mark min and max values in the plot ?

Answers (4)

Chad Greene
Chad Greene on 10 Oct 2017
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)

Walter Roberson
Walter Roberson on 10 Oct 2017
[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
Casper Stroem
Casper Stroem on 10 Oct 2017
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
Pronoy Das
Pronoy Das on 25 Dec 2020
It should be:
[maxrow, maxcol] = ind2sub(size(Cp), maxidx);
and not
[maxrow, maxcol] = sub2ind(size(Cp), maxidx);

Sign in to comment.

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!