- 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
58 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Walter Roberson
2017-11-11
No, only container objects can hold colormaps, not individual graphics objects. User-created hggroup cannot hold them either.
You have two choices:
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Red 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!