Я новичок в Matlab и задаю несколько вопросов. У меня две поверхности и плоскость на том же рисунке. Я хочу использовать разные цветовые карты и colorbar для b и еще один colormap и colorbar для c. s является фиксированным цветом, поэтому это не проблема.
Позвольте мне попытаться объяснить, чего я пытаюсь достичь:
cmap1 = colormap (topobathy) → cmap1 равен 64x3, как ожидается,
cmap2 = Colormap (redwhitegreen)
создать cdata1 с помощью cmap1 (это первая часть, которую я не могу понять, как масштабировать данные z с помощью cmap1, по умолчанию CData содержит значения z)
Ь = прибой (х, у, г, cdata1)
colorbar для b с использованием значений z
c = pcolor (x, y, (z-z0)) - Я хочу использовать cmap2 для этого.
colorbar для c с использованием значений (z-z0)
Вот что я до сих пор и проблемы, с которыми я сталкиваюсь
b=surf(x,y,z);
colormap(topobathy);
cbar1=colorbar;
set(get(cbar1,'ylabel'),'String', 'Elevation (m)', 'Rotation', 90)
hold on;
s=surf(x,y,z1,'FaceColor',[0.278 0.788 0.788])
hold on;
change=z-z0;
c=pcolor(x,y,change)
set(c,'ZData',100 + 0*change); %plotting it above the other surfaces
colormap(redwhitegreen)`
в этот момент для colormap установлено значение redwhitegreen для b, colorbar of b Я не могу получить второй цветной план с собственным кликом и т.д.
Я использовал freezeColors и cbfreeze в этой ссылке: http://blogs.mathworks.com/pick/2009/07/24/using-multiple-colormaps-in-a-single-figure/
но одна вещь работает, когда возится другая вещь (возможно, вся моя вина). Я хочу узнать, как получить полный контроль над моими объектами, не используя внешние файлы m в любом случае.
Любая помощь приветствуется.