[精选]第4章matlab计算的可视化第三次课--资料课件.ppt
《[精选]第4章matlab计算的可视化第三次课--资料课件.ppt》由会员分享,可在线阅读,更多相关《[精选]第4章matlab计算的可视化第三次课--资料课件.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章第四章 MATLAB计算的可视化(三)计算的可视化(三) 图形修饰处理图形修饰处理 隐函数绘图隐函数绘图 图像处理与动画制作图像处理与动画制作4.4 4.4 图形修饰处理图形修饰处理4.4.1 4.4.1 视点处理视点处理 从不同的视点绘制的图形其形状是不一样的。视点位从不同的视点绘制的图形其形状是不一样的。视点位置可由方位角和仰角表示。方位角又称旋转角,它是视点置可由方位角和仰角表示。方位角又称旋转角,它是视点与原点连线在与原点连线在xyxy平面上的投影与平面上的投影与y y轴负方向形成的角度,轴负方向形成的角度,正值表示逆时针,负值表示顺时针。仰角又称视角,它是正值表示逆时针,负值表
2、示顺时针。仰角又称视角,它是视点与原点连线与视点与原点连线与xyxy平面的夹角,正值表示视点在平面的夹角,正值表示视点在xyxy平面平面上方,负值表示视点在上方,负值表示视点在xyxy平面下方。平面下方。4.4 4.4 图形修饰处理图形修饰处理 MATLABMATLAB提供了设置视点的函数提供了设置视点的函数viewview,其调用格式为,其调用格式为view(az,el)view(az,el):azaz为方位角,是为方位角,是视点与原点连线在视点与原点连线在xyxy平面上的投平面上的投影与影与y y轴负方向的夹角,逆时针旋转为正方向。轴负方向的夹角,逆时针旋转为正方向。elel为仰角。为仰角
3、。它们的单位均为度。它们的单位均为度。view(2)view(2):给出了二维图形中视角的默认值(:给出了二维图形中视角的默认值(0 0,9090););view(3)view(3):给出了三维视图中视角的默认值(:给出了三维视图中视角的默认值(-37.5-37.5,3030)az,el=view:az,el=view:返回当前图形的视角。返回当前图形的视角。4.4 4.4 图形修饰处理图形修饰处理【例【例4.454.45】从不同视点观察三维曲线。】从不同视点观察三维曲线。程序如下:程序如下: x,y=meshgrid(0:0.1:pi/2,0:0.1:pi);z=sin(x.2)+cos(y
4、.2); subplot(1,3,1) plot3(x,y,z); grid,xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis); subplot(1,3,2) plot3(x,y,z) grid,xlabel(X-axis),ylabel(Y-axis) title(Az=90,El=0)view(90,0)subplot(1,3,3) plot3(x,y,z) grid,xlabel(X-axis),ylabel(Y-axis) title(Az=0,El=90) view(0,90)或或view(2)4.4 4.4 图形修饰处理图形修饰处理 函数函数
5、viewmtxviewmtx给出指定视角的正交转换矩阵给出指定视角的正交转换矩阵【例【例4.464.46】A=viewmtx(0,90)A = 1.0000 0 0 0 0 1.0000 0.0000 0 0 -0.0000 1.0000 0 0 0 0 1.00004.4 4.4 图形修饰处理图形修饰处理 函数函数rotate3drotate3d是较为常用的三维视角变化函数,该函数的是较为常用的三维视角变化函数,该函数的使用将触发图形窗口的使用将触发图形窗口的rotate3drotate3d选项,这时,用户可以方选项,这时,用户可以方便地用鼠标来控制视角的变化,而且,视角的变化值也将便地用鼠
6、标来控制视角的变化,而且,视角的变化值也将实时地显示在图中。实时地显示在图中。【例【例4.474.47】三维视角变化函数设置视角为(】三维视角变化函数设置视角为(-33-33,4242)。)。 x,y,z=peaks;x,y,z=peaks; colormap(hsv(100) colormap(hsv(100) mesh(x,y,z) mesh(x,y,z) rotate3d rotate3d4.4 4.4 图形修饰处理图形修饰处理4.4.2 4.4.2 色彩处理色彩处理1 1颜色的向量表示颜色的向量表示 MATLABMATLAB除用字符表示颜色外,还可以用含有除用字符表示颜色外,还可以用含
7、有3 3个元素的个元素的向量表示颜色。向量元素的范围取值为向量表示颜色。向量元素的范围取值为00,11,3 3个元素分个元素分别表示红、绿、蓝别表示红、绿、蓝3 3种颜色的相对亮度,称为种颜色的相对亮度,称为RGBRGB向量,如向量,如灰色表示为灰色表示为0.5 0.5 0.50.5 0.5 0.5。下页表所示为几种常见颜色。下页表所示为几种常见颜色的的RGBRGB值。值。4.4 4.4 图形修饰处理图形修饰处理 表 3.7 几种常见的 RGB 向量 RGB 值 颜 色 字 符 RGB 值 颜 色 字 符 0 0 1 蓝色 b 1 1 1 白色 w 0 1 0 绿色 g 0.5 0.5 0.5
8、 灰色 1 0 0 红色 r 0.67 0 1 紫色 0 1 1 青色 c 1 0.5 0 橙色 1 0 1 品红色 m 1 0.62 0.40 铜色 1 1 0 黄色 y 0.49 1 0.83 宝石蓝 0 0 0 黑色 k 4.4 4.4 图形修饰处理图形修饰处理 2 2色图色图 色图(色图(Color mapColor map)是)是MATLABMATLAB中的颜色参照表。色图中的颜色参照表。色图以以m m 3 3的数值矩阵表示,用于定义的数值矩阵表示,用于定义m m种颜色,它的每一行种颜色,它的每一行对应某个颜色的对应某个颜色的RGBRGB向量。色图保存着颜色从浓到淡或从向量。色图保存
9、着颜色从浓到淡或从一种颜色过渡到另一种颜色的所有中间颜色的值。除一种颜色过渡到另一种颜色的所有中间颜色的值。除plotplot及其派生函数外,及其派生函数外,meshmesh、surfsurf等函数均使用色图着色。等函数均使用色图着色。 MATLABMATLAB中使用函数中使用函数colormapcolormap设置和获取图像显示用的颜色设置和获取图像显示用的颜色参照表,函数的调用格式为参照表,函数的调用格式为 colormap(m)colormap(m) 其中其中m m为一三列矩阵,行数不限,该矩阵可以是下页为一三列矩阵,行数不限,该矩阵可以是下页表所示的颜色映像,也可以为用户自定义的颜色映
10、像矩阵。表所示的颜色映像,也可以为用户自定义的颜色映像矩阵。 4.4 4.4 图形修饰处理图形修饰处理颜色映像颜色映像相应的颜色系相应的颜色系颜色映像颜色映像相应的颜色系相应的颜色系autumn红黄色系红黄色系hsv色调饱和色系(以红色开始并束)色调饱和色系(以红色开始并束)bone带一点蓝色的灰度带一点蓝色的灰度 jet色调饱和色系(以蓝色开始并束)色调饱和色系(以蓝色开始并束)colorcube增强的颜色系增强的颜色系lines线性色系线性色系cool青和洋红的色系青和洋红的色系pink柔和色系柔和色系copper线型铜色系线型铜色系prism棱镜色系棱镜色系flag交替的红白蓝黑色系交替
11、的红白蓝黑色系spring洋红黄色系洋红黄色系gray线性灰色系线性灰色系summer绿、黄色系绿、黄色系hot黑红黄白色系黑红黄白色系winter蓝、绿色系蓝、绿色系vgaWindows16为色系为色系4.4 4.4 图形修饰处理图形修饰处理例如:例如: colormap(pink(8);%colormap(pink(8);%定义当前窗口的颜色映像为柔和色定义当前窗口的颜色映像为柔和色系,其颜色定义有系,其颜色定义有8 8种。可以通过查看颜色映像矩阵而种。可以通过查看颜色映像矩阵而得到具体的颜色值。得到具体的颜色值。例如:例如:pink(8)pink(8)ans = 0.3333 0 0 0
12、.5634 0.3086 0.3086 0.7237 0.4364 0.4364 0.7868 0.6299 0.5345 0.8452 0.7766 0.6172 0.8997 0.8997 0.6901 0.9512 0.9512 0.8591 1.0000 1.0000 1.00004.4 4.4 图形修饰处理图形修饰处理 完成对颜色映像的定义后,可以调用所定义的颜色映完成对颜色映像的定义后,可以调用所定义的颜色映像为图形服务,有像为图形服务,有pcolor,rgbplotpcolor,rgbplot及及colorbarcolorbar等函数。等函数。 函数函数pcolorpcolor为
13、伪色函数,伪色并不是真正的颜色,而为伪色函数,伪色并不是真正的颜色,而是通过颜色的不同来反映相应数据数值的大小。调用格式:是通过颜色的不同来反映相应数据数值的大小。调用格式: pcolor(c)pcolor(c):其作用相当于以当前颜色映像为矩阵:其作用相当于以当前颜色映像为矩阵c c进进行行“着色着色”,即根据矩阵元素的大小在当前颜色映像中进,即根据矩阵元素的大小在当前颜色映像中进行插值着色。行插值着色。 4.4 4.4 图形修饰处理图形修饰处理 函数函数pcolorpcolor的使用一般与函数的使用一般与函数shadingshading相结合,相结合,shadingshading的作用在于
14、以不同方式为图形着色,其调用格式如的作用在于以不同方式为图形着色,其调用格式如下:下: shading shading 控制字符串控制字符串 其中控制字符串主要有三种形式,分别是其中控制字符串主要有三种形式,分别是faceted,interpfaceted,interp和和flatflat。其中。其中facetedfaceted为其默认形式,以平面作为着色单位;为其默认形式,以平面作为着色单位;interpinterp以插值形式为图形的像点着色;以插值形式为图形的像点着色;flatflat以平滑形式定以平滑形式定义着色方式。对于义着色方式。对于pcolorpcolor函数,其着色方式默认为函数
15、,其着色方式默认为facetedfaceted方式,可以通过调用方式,可以通过调用shadingshading加以修改。加以修改。4.4 4.4 图形修饰处理图形修饰处理【例【例4.484.48】绘制矩阵】绘制矩阵rosserrosser的伪色图。的伪色图。 colormap(hot(80); pcolor(rosser); shading interp; shading flat;4.4 4.4 图形修饰处理图形修饰处理 函数函数rgbplotrgbplot是一种直接显示颜色映像的函数,其调是一种直接显示颜色映像的函数,其调用格式为;用格式为; rgbplot(colormap):rgbpl
16、ot(colormap):该函数的输入变量本身是一个颜色该函数的输入变量本身是一个颜色映像,或颜色映像相似的数值矩阵,其作用是将矩阵的映像,或颜色映像相似的数值矩阵,其作用是将矩阵的三列值分别以红、绿、蓝绘出。三列值分别以红、绿、蓝绘出。【例如】【例如】 rgbplot(hot(80)rgbplot(hot(80) 此命令绘出颜色映像此命令绘出颜色映像hot(80)hot(80)的的RGBRGB三色图,如右图。三色图,如右图。4.4 4.4 图形修饰处理图形修饰处理 函数函数colorbarcolorbar将在当前的图形窗口中显示颜色标尺,将在当前的图形窗口中显示颜色标尺,用来反映当前使用的颜
17、色映像,并且以此反映图形中数据用来反映当前使用的颜色映像,并且以此反映图形中数据的相对大小。其调用格式如下:的相对大小。其调用格式如下: colorbar(colorbar(vertvert) %) %垂直显示颜色标尺垂直显示颜色标尺 colorbar(colorbar(horizhoriz)%)%水平显示颜色标尺水平显示颜色标尺【例【例4.49】对色图添加颜色标尺。】对色图添加颜色标尺。x,y,z=peaks; mesh(x,y,z); colormap(hot(80); colorbar4.4 4.4 图形修饰处理图形修饰处理3 3三维表面图形的着色三维表面图形的着色 三维表面图实际上就是
18、在网格图的每一个网格片上涂三维表面图实际上就是在网格图的每一个网格片上涂上颜色。上颜色。surfsurf函数用默认的着色方式对网格片着色。此外,函数用默认的着色方式对网格片着色。此外,还可以用还可以用shadingshading命令来改变着色方式,命令来改变着色方式,shadingshading命令的调命令的调用格式为:用格式为: shading shading 选项选项 其中,其中,“选项选项”有如下有如下3 3种取值。种取值。facetedfaceted:将每个网格片用其高度对应的颜色进行着色,:将每个网格片用其高度对应的颜色进行着色,但网格线仍保留着,其颜色是黑色。这是系统的默认着色但网
19、格线仍保留着,其颜色是黑色。这是系统的默认着色方式。方式。flatflat:将每个网格片用同一个颜色进行着色,且网格线也:将每个网格片用同一个颜色进行着色,且网格线也用相应的颜色,从而使得图形表面显得更加光滑。用相应的颜色,从而使得图形表面显得更加光滑。interpinterp:在网格片内采用颜色插值处理,绘制出的表面图:在网格片内采用颜色插值处理,绘制出的表面图显得最光滑。显得最光滑。 4.4 4.4 图形修饰处理图形修饰处理【例【例4.504.50】三种着色方式的效果展示。】三种着色方式的效果展示。x,y,z=sphere(20);x,y,z=sphere(20); colormap(co
20、pper); colormap(copper); subplot(1,3,1); subplot(1,3,1); surf(x,y,z);axis equal; surf(x,y,z);axis equal; subplot(1,3,2); subplot(1,3,2); surf(x,y,z);shading flat;axis equal surf(x,y,z);shading flat;axis equalsubplot(1,3,3);subplot(1,3,3);surf(x,y,z);shading interp;axis equalsurf(x,y,z);shading inter
21、p;axis equal4.4 4.4 图形修饰处理图形修饰处理 除了使用已有的颜色映像,还可以对颜色映像本身进除了使用已有的颜色映像,还可以对颜色映像本身进行操作,函数有行操作,函数有brightenbrighten和和caxiscaxis。 函数函数brightenbrighten的作用是对颜色映像的色彩强弱进行的作用是对颜色映像的色彩强弱进行调整,其调用格式:调整,其调用格式: brighten(beta)brighten(beta) 当当betabeta大于零时,将增强当前的色彩强度;相反,大于零时,将增强当前的色彩强度;相反,当当betabeta小于零时,将削弱当前的色彩强度。若调用
22、过小于零时,将削弱当前的色彩强度。若调用过brighten(beta)brighten(beta)后再调用一次后再调用一次brighten(beta)brighten(beta),可以很,可以很明显地看到原图的色彩强弱变化。也可以将调整过的颜明显地看到原图的色彩强弱变化。也可以将调整过的颜色映像赋以新的变量名,这样不仅会生成新的颜色映像,色映像赋以新的变量名,这样不仅会生成新的颜色映像,而且被调整的颜色映像的值也不会改变。而且被调整的颜色映像的值也不会改变。4.4 4.4 图形修饰处理图形修饰处理 函数函数caxiscaxis也是一个经常用到的颜色处理函数,使用该也是一个经常用到的颜色处理函数
23、,使用该函数可以自如地控制图形中颜色显示的范围以及色彩与数函数可以自如地控制图形中颜色显示的范围以及色彩与数值的对应关系。其调用格式为:值的对应关系。其调用格式为: caxis(cmin,cmax)caxis(cmin,cmax) cmin,cmax=caxis cmin,cmax=caxis 当使用第一种方式调用时,系统将在当使用第一种方式调用时,系统将在cmin,cmaxcmin,cmax范围内与颜色映像的色值相对应,并依此为图形着色。如范围内与颜色映像的色值相对应,并依此为图形着色。如果数据点的值小于果数据点的值小于cmincmin或大于或大于cmaxcmax时,将按等于时,将按等于cm
24、incmin或或cmaxcmax得数据点的颜色进行着色;如果数据点的全集是得数据点的颜色进行着色;如果数据点的全集是cmin,cmaxcmin,cmax的一个子集,则将按其对应的颜色进行着色,的一个子集,则将按其对应的颜色进行着色,也即此时只利用了颜色映像的一部分。也即此时只利用了颜色映像的一部分。4.4 4.4 图形修饰处理图形修饰处理例对例对4.494.49进行操作:进行操作: caxiscaxis(-2-2,22) 此时数据限超过此时数据限超过caxiscaxis的设定限。结果如下图所示。的设定限。结果如下图所示。4.4 4.4 图形修饰处理图形修饰处理caxis(-10,10)caxi
25、s(-10,10) 此时数据限小于此时数据限小于caxiscaxis的设定限,结果如下图所示。的设定限,结果如下图所示。 4.4 4.4 图形修饰处理图形修饰处理 Matlab Matlab语言中对背景颜色语言中对背景颜色进行操作的函数:进行操作的函数:colordefcolordef【例4.51】图形背景色彩控制演示。 colordef nonecolordef none x,y,z=peaks; x,y,z=peaks; mesh(x,y,z); mesh(x,y,z); colordef black colordef black mesh(x,y,z) mesh(x,y,z)4.4 4.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 matlab 计算 可视化 第三次 资料 课件
限制150内