solid contour lines for some specific values of a contourf plot

1 vue (au cours des 30 derniers jours)
Richard
Richard le 17 Juil 2012
Commenté : Cva Shrestha le 2 Mai 2017
After generating a contourf plot is it possible to draw a solid black line around some specific values?
For example:
[C,h] = contourf(peaks(20),10);
colormap autumn
From this, is it possible to dray a contour around the regions in the plot which correspond to values above a certain value, say 4. So, any values that are above 4 will have a solid black line surrounding it. How can this be achieved?

Réponse acceptée

Teja Muppirala
Teja Muppirala le 17 Juil 2012
Modifié(e) : Teja Muppirala le 17 Juil 2012
The userdata property of each patch is set to the level's value. You can use this to find the relevant patch, and make its line width bigger.
[C,h] = contourf(peaks(20),-10:10);
colormap autumn
thisH = findall(h,'Userdata',4.0);
set(thisH,'linewidth',3)
Redo (to make all levels above 4.0 bold):
[C,h] = contourf(peaks(20),10);
colormap autumn
kids = get(h,'children');
indices = cell2mat(get(kids,'Userdata')) > 4.0;
set(kids(indices),'linewidth',3)
  3 commentaires
Teja Muppirala
Teja Muppirala le 17 Juil 2012
You have to look at all the patches and find the ones with userdata > 4.0. I updated the answer to reflect this.
Cva Shrestha
Cva Shrestha le 2 Mai 2017
When i copied and ran the code..nochanges were observed..
when i checked the userdata was empty?? can anybody help in this

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Lighting, Transparency, and Shading dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by