- use two axes, probably set to the same position, such as you might for plotyy or the newer yyaxis; or
- draw the first item with appropriate colormap, then use a tool such as the File Exchange freezeColors() to convert the item to RGB; once it is RGB, you can put up the second item and change colormaps, as the first item will no longer be using a colormap.
Use distinct colormaps for two different surf plots on the same figure
35 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Leo Simon
le 11 Nov 2017
Commenté : Leo Simon
le 11 Nov 2017
Using R2016b, I would like to create two surf plots and use a different colormap for each one. It appears that the only way to assign a color map is to apply it to the axis handle. In the code below I was hoping that AxOne and AxTwo would be different objects, but alas, they appear to be the same thing. Hence when I change the colormap for AxTwo, it changes the colormap for both plots. Is there a way to set the colormap for the first surf to be 'cool' and for the second one to be 'hot'?
hold on;
[x,y,z] = peaks;
h1 = surf(x,y,z)
view(3)
AxOne = get(h1,'Parent');
colormap(AxOne,'cool');
h2 = surf(y,x,3+z)
AxTwo = get(h2,'Parent');
colormap(AxTwo,'hot');
0 commentaires
Réponse acceptée
Walter Roberson
le 11 Nov 2017
No, only container objects can hold colormaps, not individual graphics objects. User-created hggroup cannot hold them either.
You have two choices:
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Orange 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!