[X,Y]=meshgrid(-3:0.1:3);
Z=sqrt(X.^2+Y.^2);
surf(X,Y,Z);
colormap(jet) %输出的彩色图,正常值
pause(2) %暂停2秒
colormap(cool) %换一种标色,注意看
pause(2)
colormap(hsv) %再换一种
%%%可以这样看这个colormap,z的值归一化到0,1
%%%不同的z对应着不同的颜色
%%%上面的colormap中的参数,是不同的方式计算不同的z对应不同的颜色
%%%颜色值,我们都知道有RGB,就是三种颜色混合
%%%HSV也是类似的,只不过它是另一种计量方式.RGB跟HSV可以相互转换 hsv2grb
%%至此已经讲了colormap和hsv,下面是shading,一般是说阴影
shading 是用来处理色彩效果的,分以下三种:
no shading 一般的默认模式 即shading faceted
shading flat 在faceted的基础上去掉图上的网格线
shading interp 在flat的基础上进行色彩的插值处理,使色彩平滑过渡,最爱用这个
%%pcolor和caxis
%%这两个主要用来做等值图,一般是投影到同一个平面上
figure
pcolor(X,Y,Z) %在XY平面上,用不同颜色表示不同的Z的值
pause(2)
caxis是为色的设置,z的最小值应当是0,最大值应当是3*sqrt(2)
caxis([1,2])%将颜色的最小值对应的z取为1(小于1的无法分辩开),同样大于2的也没有办法分辨开。
透明度设置的使用范围 ailpha
二维图形是不需要设置透明度的, 一般我们在曲面图形中才设置透明度
设置单一的透明度
如果我们想让这个图形透明度为百分之多少, 例如百分之五十---半透明, 很简单, 在Matlab命令窗口(command window) 中输入如下命令: alpha(0.5), 括号中的取值可以是0和1之间的任意实数值, 其中0是完全透明, 1是完全不透明
设置渐变的透明度
如果我们能够让图像随着坐标轴标尺的变化而变化透明度那是不是很神奇? 在Matlab中太简单了, 命令: alpha('x'), alpha('y'), alpha('z')分别是让曲面随着x, y, z坐标轴坐标的增加而逐渐不透明.
其它透明度设置方法
alpha('rand'), 随机设置每个曲面块的透明度.
alpha('interp'), 之前先执行alpha(rand), 随机设置透明度 再使用alpha('interp')添加渐变效果, 图形将变得光怪陆离, 很是好看.