Plot only certain contours

99 views (last 30 days)
William White
William White on 1 Feb 2018
Commented: Matt J on 1 Feb 2018
Sirs, I am plotting a contour plot of data
contourf(X,Y,Z)
Say the values of Z range from 0 to 100 (or say, -100 to 100 for another example).
I can overlay the contour values
hold on
[C,h] = contour(X,Y,Z);
clabel(C,h)
Is it possible to only plot the entire contourf(X,Y,Z) so it is a full contour map
but then only plot the iso-contour lines for particular values?
So, I might want to over-plot only the isocontour that has value 20?
Or, more usefully, say, 20,30 and 40?
kind regards

Accepted Answer

Matt J
Matt J on 1 Feb 2018
Edited: Matt J on 1 Feb 2018
From the doc:
contourf(Z,v) draws a filled contour plot of matrix Z with contour lines at the data values specified in the monotonically increasing vector v. To display a single contour line at a particular value, define v as a two-element vector with both elements equal to the desired contour level.
Is this not what you want?
  3 Comments
Matt J
Matt J on 1 Feb 2018
Edited: Matt J on 1 Feb 2018
I'm still not sure I see the problem. Why not as follows?
contourf(X,Y,Z)
hold on
[C,h] = contour(X,Y,Z,[20,30,40]);
clabel(C,h)
hold off
Matt J
Matt J on 1 Feb 2018
William White commented:
Hi Matt, I think the problem is that I was unaware that the selected values could be inserted like that! thanks a lot, much appreciated! W

Sign in to comment.

More Answers (0)

Categories

Find more on Contour Plots in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!