小编the*_*emy的帖子

Matlab:如何在同一图中为不同的表面指定不同的色图/色块

我对Matlab很新,并且有一些问题.我在同一个图中有两个表面和一个平面.我想为b使用不同的colormap和colorbar,为c使用另一个colormap和colorbar.s是固定颜色,所以这不是问题.

让我试着解释一下我想要实现的目标:

cmap1 = colormap(topobathy) - > cmap1是64x3双倍的预期

cmap2 =颜色表(redwhitegreen)

使用cmap1创建cdata1(这是我无法弄清楚的第一部分,如何使用cmap1扩展z数据,默认情况下CData包含z值)

B =冲浪(X,Y,Z,cdata1)

使用z值的b的colorbar

c = pcolor(x,y,(z-z0)) - 我想在这个中使用cmap2.

使用(z-z0)值的c的colorbar

这是我到目前为止所遇到的问题

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)`
Run Code Online (Sandbox Code Playgroud)

此时,colormap设置为redwhitegreen为b,colorbar为b我无法获得第二个带有自己攀爬的colorbar等.

我在此链接中使用了freezeColors和cbfreeze:http: //blogs.mathworks.com/pick/2009/07/24/using-multiple-colormaps-in-a-single-figure/

但有一件事是在弄乱另一件事(可能都是我的错).我想学习如何在不使用外部m文件的情况下完全控制我的对象.

任何帮助表示赞赏.

matlab color-mapping matlab-figure

11
推荐指数
1
解决办法
4万
查看次数

Matlab如何在z轴上改变contourf plot的位置

我的身材中有一个3d表面 surf(x,y,z)

我也有一个contourf表面(基本上是一个2D平面).

我在相同的图中绘制它们,但contourf绘图自动处于z=0水平.我想将contourf绘图移动到z=-10(或z轴上的任何值),但我不能这样做.

我相信这很容易但我在MATLAB help/Google中找不到答案.有任何想法吗?

3d matlab plot z-axis

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

matlab ×2

3d ×1

color-mapping ×1

matlab-figure ×1

plot ×1

z-axis ×1