第4章 MATLAB绘图 4.1 MATLAB二维曲线绘图 基本绘图指令 1.plot(Y) 功能:画一条或多条折线图.

Slides:



Advertisements
Similar presentations
第五章 导数和微分 §1 导数的概念 §2 求导法则 §3 参变量函数的导数 §4 高阶导数 §5 微分.
Advertisements

第2章 医院和住院环境 厦门医学高等专科学校 基础护理教研室.
SCILAB第二章 二維平面繪圖 撰文者: 1.中央大氣科學系 楊善文 2. (如對本文有貢獻者,記得在此留名)
数学实验与Matlab.
第五章 图像的校正和配准 数字图像与矩阵 灰度与直方图 图像产品处理流程 辐射校正 几何校正 校正方法应用.
MATLAB程序设计教程(第二版) 刘卫国 主编 中国水利水电出版社.
國中適性輔導宣導 生涯導航 談國中學生適性輔導 石牌國中 輔導室葉嘉惠.
早一步,海阔天空 大肠癌预防与早期发现.
观摩本次优质课的一点收获和思考 巩固创新成果 打造活力课堂 烟台市教科院 韩明山.
MATLAB小结、 经典迭代法、CG.
Introduction to Matlab
1012 MATLAB 教學 彭奕翔 2013/02/27.
数学软件 Matlab —— 二维平面作图 —— 三维空间作图.
MATLAB程序设计基础 MATLAB的图形处理.
物质的组成、性质及变化 物质的组成 构成物质的微粒 微粒间的相互作用 物质的分类 按状态分类 按组成分类 物质的性质 物理性质 化学性质.
§7.7 二重积分.
数学软件 Matlab —— 二维平面作图 —— 三维空间作图.
——Matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。
数值计算的工具—MATLAB 电子计算机技术为应用数学解决实际问题创造了物质条件 。
——matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。
§ 5.1 导数 § 5.2 求导法则与导数公式 § 5.3 隐函数与参数方程求导 § 5.4 微分 § 5.5 高阶导数与高阶微分
把握命题趋势 ★ 科学应考 实现最后阶段的有效增分
第十二章 生产与费用循环审计.
用字母表示数 A=X+Y+Z 执教:建阳市西门小学 雷正明.
Chap.3 二維平面繪圖 方煒 台大生機系.
黃聰明 國立臺灣師範大學數學系 其它的資料型態與繪圖型態 黃聰明 國立臺灣師範大學數學系 T.-M.Huang.
第三章 MATLAB图形系统 3.1 图形绘制 3.2 图形标注 3.3 对数和极坐标系中图形绘制 3.4 复杂图形绘制 3.5 坐标轴控制
第六章 图 形 基 础 6.1 概述 6.2 基本二维绘图 6.3 格式化绘图 6.4 特殊图形函数 6.5 基本三维绘图
范洪源 臺灣師範大學數學系 MATLAB 基本功能介紹 范洪源 臺灣師範大學數學系.
Matlab教學 Speaker:林昱志 Date:2012/10/25.
大学数学实验 欢迎进入 MATLAB 世界 作者 薛长虹 数学系 地址:
Endnote與Word的應用(進階).
MATLAB、CTEX简介 及其 在教学中的应用
第一讲 MATLAB简介 1.1 MATLAB与通信仿真 1.1.1 通信电路与系统仿真 1.1.2 MATLAB的发展史
Application of Matlab Language
第7章 MATLAB图形用户界面设计 7.1 菜单设计 7.2 对话框设计 7.3 用户界面设计工具.
Matlab基础介绍 Matlab 简介 Matlab 的安装与启动 Matlab 编程基础 Matlab 在数字信号处理课程中的应用.
黃聰明 國立臺灣師範大學數學系 MATLAB 基本功能介紹 黃聰明 國立臺灣師範大學數學系
第三章 MATLAB图形系统 3.1 图形绘制 3.2 图形标注 3.3 对数和极坐标系中图形绘制 3.4 复杂图形绘制 3.5 坐标轴控制
数学建模与数学实验 MATLAB作图.
范洪源 臺灣師範大學數學系 分支宣告與程式設計 范洪源 臺灣師範大學數學系.
§ 9.1常用数学软件简介及MATLAB基础知识
实验二 MATLAB绘制图形 (一) 实验类型:验证性 (二) 实验类别:基础实验 (三) 实验学时数:2学时 .
数学物理方法概论 之——(微分几何) 主讲教师:白璐 联系电话:
插值与拟合 一、插值的基本原理 二、拟合的基本原理 三、插值与拟合的关系 四、插值的MATLAB实现 五、拟合的Matlab实现.
第九单元 第1课 实验 Matlab动画 1.洛仑兹非线性奇异方程所描述的无序运动 2.作y=sin(x)的程序动画(1)
MATLAB 入门教程.
第11章 MATLAB图形用户界面设计 11.1 菜单设计 11.2 对话框设计 11.3 图形用户界面设计工具
MATLAB 程式設計入門篇 二維平面繪圖 改自張智星講義
Z Mathematical Model ‡ ' 图形处理.
MATLAB 程式設計入門篇 三維立體繪圖 (part1)
三維繪圖 Helix t = 0:pi/50:10*pi; % linspace(0,10*pi,500); figure plot3(sin(t),cos(t),t) grid on axis square Remark: zlabel, view, surf.
本章學習目標 學習三維繪圖的基本技巧 學習peaks() 函數的用法 學習二維與三維等高線圖的繪製 學習三維圖形的編修
数学物理方法概论 之——(微分几何) 主讲教师:白璐 联系电话:
第二章 MATLAB编程与作图 2.1 程序设计 2.2 作图 2.3 在线帮助和文件管理 2.4 习题 2019年4月23日
第二节 MATLAB 图形处理 内容: §1 二维图形显示 §2 图形可视编辑工具 §3 三维图形显示 §4 视角变换与三视图
慢跑者与狗 一个慢跑者在平面上沿椭圆以恒定的速率v=1跑步,设椭圆方程为: x=10+20cost, y=20+5sint. 突然有一只狗攻击他. 这只狗从原点出发,以恒定速率w跑向慢跑者,狗的运动方向始终指向慢跑者.分别求出w=20,w=5时狗的运动轨迹. 1. 模型建立 设时刻t慢跑者的坐标为(X(t),Y(t)),狗的坐标为(x(t),y(t)).
1.5 Matlab绘图 plot(y) plot(x,y)
欢迎乘座远航号! 让我们一起去知识的海洋寻宝吧!
实验一 特殊函数与图形.
大数据应用人才培养系列教材 Python语言 刘 鹏 张 燕 总主编 李肖俊 主编 刘 河 钟 涛 副主编.
4.1 概 述 4.2 组合体视图绘制方法 4.3 组合体的尺寸标注 4.4 组合体视图的读图方法
实验二 MATLAB绘制图形.
第2章 MATLAB的基本语法 2.1 变量及其赋值 2.2 运算符与数学表达式 2.3 控制流 2.4 数据的输入输出及文件的读写
百雞問題 製作者:張美玲 資料來源:數學誕生的故事—凡異出版社.
数学是知识的工具,亦是其它知识工具的泉源。 ——勒内·笛卡尔
实验二 定积分的近似计算.
科研工具之图表制作---Sigmaplot
Presentation transcript:

第4章 MATLAB绘图 4.1 MATLAB二维曲线绘图 4.1.1 基本绘图指令 1.plot(Y) 功能:画一条或多条折线图. 例4-1 运行下列命令 Y=[2,3,5,6;8, 5,7,4;4,5,6,7] plot(Y)

(2)plot(X,Y) 功能:画一条或几条折线图,X,Y可以是向量 或矩阵. 例4-2 在[-π,π]上,绘制y=sinx的图形. 解:MATLAB命令为 x=-pi:pi/50:pi; y=sin(x); plot(x,y),grid on

例4-3 画出椭圆 的曲线图. 解:椭圆的参数方程为 x=5cost y=9sint,(0≤t≤2π) MATLAB命令为: t=0:pi/50:2*pi; x=5*cos(t); y=9*sin(t); plot(x,y),grid on

例4-4 绘制两条曲线 的图形. 解:MATLAB命令为: x=-2*pi:pi/50:2*pi; y=[sin(x+3);exp(sin(x))]; plot(x,y),grid on

功能:在同一图形窗口画出多条折线或曲线。 (3)plot(X1,Y1,X2,Y2,X3,Y3,…) 功能:在同一图形窗口画出多条折线或曲线。 例4-5 在同一图形窗口画出三个函数y=2x,y=cosx, y=sinx的图形,-3≤x≤3. 解:MATLAB命令为 x=-3:0.1:3; y1=2*x;y2=cos(x);y3=sin(x); plot(x,y1,’*’,x,y2,’P’,x,y3) legend(‘2*x’,’cos(x)’,’sin(x)’)

2.loglog函数 例 4-6 绘制函数y=ex双轴对数图形. 解: x=1:10 y=exp(x) loglog(x,y) 3.单轴对数图形函数 semilogx和semilogy 例 4-7 绘制函数y=ex的单轴对数图形,其中纵轴采用 对数坐标,横轴采用线性坐标. 解: x=1:10 y=exp(x) semilogy(x,y)

4.双坐标轴函数plotyy 例 4-8 利用plotyy来绘制多轴标度图形. 解: x=0:0.01:20; y1=200*exp(-0.5*x).*sin(x); y2=0.8*exp(-0.5*x).*sin(10*x); [ax,h1,h2]=plotyy(x,y1,x,y2); set(get(ax(1),'ylabel'),'string','慢衰减') set(get(ax(2),'ylabel'),'string','快衰减') xlabel('时间') title('不同衰减速度对比')

4.1.2 基本绘图控制参数 (1)图形窗口figure 命令格式:figure; figure(n); (2)清除图形窗口clf (3)控制分隔线grid grid on (使用网格线); grid off(取消分隔线); (4)图形的重叠绘制hold (on | off) (5)取点指令ginput;ginput(n)

例4-9 利用hold指令,grid指令在同一坐标系中画出为两条曲线. y=cosx,y=sinx 0≤x≤2π 解: x=0:pi/50:2*pi; y1=cos(x);y2=sin(x); plot(x,y1,’b*’) hold on, plot(x,y2,’r.’),grid on

4.1.3 坐标轴的控制 P43 4.1.4 线条属性 格式:plot(x,y,LineSpec,…,’PropertyName’,PropertyValue,..) 其中:LineSpec是指线条的如下三个属性:线型,标记类型及颜色,并用一个字符串来完成.如plot(x,y,’-db’) 1)颜色控制 表4-1 y---黄色 m----洋红 c----青色 r----红色 g---绿色 b----蓝色 w---白色 k---黑色

2)标记类型 绘图字符 数据点 . 黑点 D 钻石形 o 小圆圈 ^ 三角形(向上) × 差号 V 三角形(向下) + 十字标号 < 表4-2 标记类型 绘图字符 数据点 . 黑点 D 钻石形 o 小圆圈 ^ 三角形(向上) × 差号 V 三角形(向下) + 十字标号 < 三角形(向左) * 星号 > 三角形(向右) s 小方块 h 六角星 p 五角星

3)线型 表4-3 线型控制表 线型符号 线型 - 实线 : 点线 -. 点划线 -- 虚线

例4-10 绘制函数y=cos2t的图像,并定义线条的属性。 4)标记类型控制表 线条宽度:linewidth(单位为像素) 标记大小:markersize(单位为像素) 标记面填充颜色:markerfacecolor(见表4-1) 标记周边颜色:markeredgecolor (见表4-1) 例4-10 绘制函数y=cos2t的图像,并定义线条的属性。 解 MATLAB命令为: t=0:pi/25:2*pi; plot(t,cos(2*t),’-mo’,’linewidth’,2,’markeredgecolor’,’k’,… ‘markerfacecolor’,[0.49 1 0.63],’markersize’,10)

4.1.5 图形的标注 1.图名标注(在figure中) 1)Insert---Title 2)Tools---Edit Plot在图形内双击空白区 3)使用title函数标注图名 title('string') title(...,'PropertyName',PropertyValue,...) 2.坐标轴标注 xlabel('string') xlabel(fname) xlabel(...,'PropertyName',PropertyValue,...) ylabel,zlabel与xlabel相同

3.图形标注 4.图例标注 text(x,y,'string') text(x,y,z,'string') text(...'PropertyName',PropertyValue,...) gtext(‘string’)在鼠标‘+’ 指定位置上标注 4.图例标注 菜单Insert---legend 命令legend('string1','string2',...)

4.1.6 一个图形窗口多个子图的绘制 subplot(m,n,i)把图形窗口分为m*n个子图,并在第i个子图 中画图 4.1.6 一个图形窗口多个子图的绘制 subplot(m,n,i)把图形窗口分为m*n个子图,并在第i个子图 中画图 例 4-11 在同一坐标系中画出两个函数,y=cos2x,y=sinxsin6x 的图形,自变量的范围为0≤ x ≤π,函数y=cos2x用红色星号,函数 y=sinxsin6x用蓝色实线,并加图名、坐标轴、图形、图例标注 解 MATLAB命令为: x=0:pi/50:pi; y1=cos(2*x);y2=sin(x).*sin(6*x); plot(x,y1,'r*',x,y2,'b-'),grid on title(‘曲线y1=cos(2x)曲线y2=sin(x)sin(6x)') xlabel('x轴'),ylabel('y轴') gtext('y1=cos(2x)'),gtext('y2=sin(x)sin(6x)') legend('y1=cos(2x)','y2=sin(x)sin(6x)')

例 4-12 演示subplot指令对图形窗口的分割 解 MATLAB命令为: clf; x=-2:0.2:2; y1=x+sin(x);y2=sin(x)./x;y3=x.^2; subplot(2,2,1),plot(x,y1,’m.’),grid on,title(‘y=x+sinx’) subplot(2,2,2),plot(x,y2,’rp’),grid on,title(‘y=sinx/x’) subplot(‘position’,[0.2,0.05,0.6,0.45]), plot(x,y3),grid on,text(0.3,2.3,’x^2’)

4.1.7 绘制数值函数二维曲线的指令fplot fplot的格式:fplot(fun,limits,tol,linespec) 说明:fun是函数名,可以是函数串及自定义函数;limits是坐标轴的取值范围;tol是相对误差,默认值为2e-3;linespec是线型,颜色和数据点等设置. 例 4-13 分别利用指令plot和fplot绘制y=cos(1/x)在区间[-1,1]的图像,并作比较. 解 (1)用plot画图,MATLAB命令为: x=-1:0.1:1; y=cos(1./x) plot(x,y)

4.1.8 绘制符号函数二维曲线的指令ezplot (2)用fplot画图,MATLAB命令为: fplot(‘cos(1./x)’,[-1,1]) 4.1.8 绘制符号函数二维曲线的指令ezplot ezplot的格式:ezplot(F,[xmin,xmax]) 说明:F可以是字符串表达式,符号函数,内联函数,但是所有函数都只能是一元函数.如果区间[xmin,xmax]缺省,为[-2π,2 π]. 例4-14 绘制 在区间[0,4pi]上的图形. 解 MATLAB命令为: syms t ezplot(‘2/3*exp(-t/2)*cos(3/2*t)’,[0,4*pi])

4.2 MATLAB二维特殊图形 4.2.1 条形图 用bar和barh分别绘制二维垂直条形图和二维水平条开形图. 1)bar(Y) 若Y为向量,则分别显示每个分量的高度,横坐标为1到length(Y); 若Y为矩阵,则把Y分解成行向量,再分别画出,横坐标为矩阵的行数. 2)bar(X,Y) 在指定的横坐标X上画出Y. 3) bar(X,Y,width) width为同一组内图形的间距,默认值为0.8. 4) bar(X,Y,’style’) style有两种模式,group模式,若Y为n*m矩阵,则bar显示 n组,每一组有m个垂直条形的条形图; stack模式,对Y的每一个行向量显示在 一个条形图中,条形图的高度为该行向量的分量的和.

subplot(2,2,1),bar(y,’group’),title(‘group’) 例 4-15 使用bar和barh绘图 解 MATLAB命令为: y=rand(6,4)*8; subplot(2,2,1),bar(y,’group’),title(‘group’) subplot(2,2,2),bar(y,’stack’),title(‘stack’) subplot(2,2,3),barh(y,’stack’),title(‘stack’) subplot(2,2,4),bar(y,1.6),title(‘group’) 其它特殊绘图略(见教科书)

4.3 三维曲线绘图 plot3(X,Y,Z,’String’) 4.3 三维曲线绘图 plot3(X,Y,Z,’String’) plot3(X1,Y1,Z1,’String1’, X2,Y2,Z2,’String1’,…) 空间曲线的参数方程为x=x(t),y=y(t),z=z(t),t为参数。 例4-22 绘制三维曲线的图象: 解 MATLAB命令为: t=0:pi/10:20*pi; x=t.*sin(t); y=t.*cos(t); z=t; plot3(x,y,z)

例4-23 在同一坐标下绘制如下两个函数的图象: 与 解 MATLAB命令为: t=linspace(0,10*pi,1001); plot3(t.*sin(t),t.*cos(t),t, t.*sin(t),t.*cos(t),-t)

例4-24 使用plot3绘制三维螺线,并用红色星号画出。 解 MATLAB命令为: t=0:pi/50:10*pi; plot3(sin(t),cos(t),t,’r*’); grid on; axis square

4.4 三维曲面绘图 4.4.1 meshgrid命令 二元函数z=f(x,y)的图形是三维空间曲面,MATLAB把函数z=f(x,y)定义在矩形 区域D=[x0,xm] ×[y0,yn]上,区域D分成m×n个小矩形块.每个小矩形有4个顶点 (xi,yi,f(xi,yi)),连接4个顶点得到一个空间中的四边形片,所有这些四边形片构成函 数的空间网格曲面.用函数meshgrid生成xy平面上的小矩形顶点坐标值的矩阵, 也称为格点矩阵 Meshgrid的调用格式: [X,Y]=meshgrid(x,y) 绘制二维图形时生成的小矩形的格点. [X,Y]=meshgrid(x) 等价于[X,Y]=meshgrid(x,x). [X,Y,Z]=meshgrid(x,y,z) 绘制三维图形时生成的空间曲面的格点. [X,Y,Z]=meshgrid(x) 等价于[X,Y,Z]=meshgrid(x,x,x) 说明:x是区间[x0,xm] 上分划点组成的向量,而y是区间[y0,ym] 上分划点组成的向量.输出向量X和Y都是m×n矩阵,而矩阵X的行向量都是x,矩阵Y的列向量都是y.

例 4-25 已知向量x=[1,2 3],y=[4 ,7,9,0],生成它们对应的格点矩阵. 解 MATLAB命令为: x=[1 2 3]; y=[4 7 9 0]; [X,Y]=meshgrid(x,y) 利用函数meshgrid生成格点矩阵,然后求出各格点对应的函数值,就可以利用 mesh和surf命令分别生成空间的网格曲面和表面曲面. 4.4.2 三维网格命令mesh Mesh调用格式; mesh(X,Y,Z),用来绘制一个网格图,图像的颜色由Z确定。X,Y,Z可以是同 维的矩阵,也可以是向量,如果X,Y为向量,必需满足:length(X)=n,length(Y)=m, 其中[m,n]=size(Z). mesh的其它调用格式见P60。

例 4-26 画出函数z=x2+y2在-3≤x,y ≤3 上的图形,以及函数 z=x2-2y2 在-10≤x,y ≤10 上的图形。 解 MATLAB命令为: %函数z=x2+y2 t1=-3:0.1:3; [x1,y1]=meshgrid(t1); z1=x1.^2+y1.^2; subplot(1,2,1), mesh(x1,y1,z1),title(‘x^2+y^2’) %马鞍面z=x2-2y2 t2=-10:0.1:10; [x2,y2]=meshgrid(t2); z2=x2.^2-2*y2.^2; subplot(1,2,2), mesh(x2,y2,z2),title(‘马鞍面’)

例 4-27 分别用指令mesh,meshc,meshz画出 在-8≤x,y≤8上的图形。 解 MATLAB命令为: %函数 t=-8:0.1:8; [x,y]=meshgrid(t); r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; subplot(1,3,1),meshc(x,y,z) title(‘meshc’),axis([-8 8 -8 8 -0.5 0.8]) subplot(1,3,2),meshz(x,y,z) title(‘meshz’),axis([-8 8 -8 8 -0.5 0.8]) subplot(1,3,3),mesh (x,y,z) title(‘mesh’),axis([-8 8 -8 8 -0.5 0.8])

4.4.2 三维表面命令surf 用法同mesh命令 例4-28 画出函数 ,-2≤x,y ≤2的图像,比较指令surf与mesh. 解 MATLAB命令为: %用mesh完成: t=-2:0.1:2; [x,y]=meshgrid(t); z=x.*exp(-x.^2-y.^2); mesh(x,y,z) %用surf完成: surf(x,y,z)

t=-10:0.1:10;[x,y]=meshgrid(t);z1=(x.^2-2*y.^2)+eps; 例4-29 画出函数 z=x2+y2 ,-1≤x,y ≤1的图像,比较指令surf与mesh. 解 MATLAB命令为: t=-1:0.1:1; [x,y]=meshgrid(t); z=x.^2+y.^2; subplot(1,2,1),mesh(x,y,z),title(‘网格图’) subplot(1,2,2),surf(x,y,z),title(‘表面图’) 例4-30 用平行截线法讨论由方程构成的马鞍面形状。 解 MATLAB命令为: %马鞍面 t=-10:0.1:10;[x,y]=meshgrid(t);z1=(x.^2-2*y.^2)+eps; subplot(1,3,1),mesh(x,y,z1),title(‘马鞍面’) %平面 a=input(‘a=(-50<a<50)’);z2=a*ones(size(x)); subplot(1,3,2),mesh(x,y,z2),title(‘平面’) %交线plot3 r0=abs(z1-z2)<=1;zz=r0.*z2;yy=r0.*y;xx=r0.*x; subplot(1,3,3),plot3(xx(r0~=0),yy(r0~=0),zz(r0~=0),’x’), title(‘交线’)

[x,y,z]=shpere(n),x,y,z是返回的(n+1)*(n+1)矩阵,且 surf(x,y,z)为单位球面. 4.4.4 绘制球面和柱面 绘制球面 sphere(n) 绘制一个单位球面,且球面上分格线条数为n. [x,y,z]=shpere(n),x,y,z是返回的(n+1)*(n+1)矩阵,且 surf(x,y,z)为单位球面. 例 4-31 画函数x2+y2+z2=1与x2+y2+z2=4的图形. 解 MATLAB命令为: %半径为1的球面 v=[-2 2 -2 2 -2 2]; subplot(121),shpere(30),title(‘半径为1的球面’),axis(v) %半径为2的球面 [x,y,z]=spere(30); subplot(122),surf(2*x,2*y,2*z),title(‘半径为2的球面’),axis(v)

subplot(121),cylinder, %默认的柱面 t=-pi:pi/10:pi; 2. 绘制柱面 cylinder 生成单位柱面 [x,y,z]=cylinder 返回半径为1的柱面x,y,z的坐标,然后用surf,mesh绘图. [x,y,z]=cylinder(r,n) 返回用r定义周长曲线的柱面x,y,z的坐标,且柱面上 格线条数为n. 例 4-32 画柱面与改变柱面半径的图形. 解 MATLAB命令为: subplot(121),cylinder, %默认的柱面 t=-pi:pi/10:pi; [X,Y,Z]=cylinder(1+sin(t)); %改变柱面半径 subplot(122) surf(X,Y,Z) axis equare

4.5 三维图形的控制命令 4.5.1 视角控制命令view 从不同的位置和角度观察图形命令view: view(az,el) 设置查看三维图形的三个角度,其中az为水平方位角,从Y轴负方向开始,以逆时针方向旋转为正;el为垂直方位角,以向Z轴方向的旋转为正,向Z轴负方向的旋转为负. view([x,y,z]) 在笛卡尔坐标系下的视角. view(2) 设置默认的二维视角,此时az=0,el=90. view(3) 设置默认的三维视角,此时az=-37.5,el=30. 例 4-33 绘制函数 ,并从不同的角度观察图形. 解 MATLAB命令为: subplot(222),surf(x,y,z) view(30,30) subplot(223),surf(x,y,z) view(30,0) subplot(224),surf(x,y,z) view(-120,30) t=-2:0.1:2; [x,y]=meshgrid(t); z=x.*exp(-x.^2-y.^2); subplot(221),surf(x,y,z) view(3)

4.5.2 旋转控制命令rotate rotate(h,direction,alpha) 该命令将图形绕方向旋转一个角度.其中 参数h表示被旋转的对象.参数direction设置有两种方法:球坐标法 ,设置为[theta,phi],其单位为度;直角坐标法,即[x,y,z].参数alpha 是按右手法旋转的角度. 例 4-34 利用rotate,从不同的角度查看函数 解 MATLAB命令为: 说明:使用view旋转的是 坐标轴,使用rotate旋转的是图形,轴不变.而命令 rotate3d可使用户手动 旋转图形. t=-2:0.1:2; [x,y]=meshgrid(t); z=x.*exp(-x.^2-y.^2); h=surf(z) rotate(h,[-2,-2,0],30,[2,2,0]) colormap cool 例 4-35 利用rotate3d调整函数peaks的视角. 解 MATLAB命令为: surf(peaks(40)); rotate3d;

例 4-36 为peaks函数设置不同的背景颜色. 4.5.3 背景颜色控制命令colordef colordef white 将图形的背景色设置为白色. colordef black 将图形的背景色设置为黑色. colordef black 将图形的背景和图形窗口设置为默认色. colordef(fig,color_option) 将图形句柄fig图形的背景色设置为 由color_option指定的颜色. 例 4-36 为peaks函数设置不同的背景颜色. 解 MATLAB命令为: subplot(131),colordef none; surf(peaks(35)); subplot(132),colordef black; subplot(133),colordef white;

例 4-37 绘制peaks的图形,设置图形的颜色. 例 4-38 绘制球的图形,然后进行不同的着色. 4.5.4 图形颜色控制命令colormap colormap([R,G,B] 其中[R,G,B]代表一种颜色配色方案,见P71-表4-5. colormap(CM) 其中CM代表系统预定义的色图矩阵,见P71-表4-6 例 4-37 绘制peaks的图形,设置图形的颜色. 解 MATLAB命令为: surf(peaks(100)); colormap(cool) 4.5.5 图形着色控制命令shading shading flat 使用平滑方式着色. shading interp 使用插值方式着色. shading faceted 以平面为单位进行着色,在flat基础上,在贴片的四 周勾画黑色网线,此为系统的默认值. 例 4-38 绘制球的图形,然后进行不同的着色.

例 4-39 球的透视. 解 MATLAB命令为: [X,Y,Z]=sphere(30); subplot(131);surf(X,Y,Z);shading interp subplot(132);surf(X,Y,Z);shading flat subplot(133);surf(X,Y,Z) 4.5.6 透视控制命令hidden 在三维图形绘图时,三维图形后面的网格线会隐藏重叠,如果需要了解 隐藏的网格线,就需要透视控制命令hidden. hidden on 消隐重叠线 hidden off 透视重叠线 例 4-39 球的透视. 解 MATLAB命令为: [X0,Y0,Z0]=sphere(30); X=2*X0;Y=2*Y0;Z=2*Z0; surf(X0,Y0,Z0); shading interp hold on,mesh(X,Y,Z),colormap(hot), hold off hidden off axis equal,axis off

例 4-40 生成peaks的曲面图,之后添加光源. 4.5.7 光照控制命令light light(‘PropertyName’,Propertyvalue,…) 创建光源并设置其值。 例 4-40 生成peaks的曲面图,之后添加光源. 解 MATLAB命令为: z=peaks(50); surf(z); light(‘position’,[20,20,5])

习题: 1、绘制 的图像,要求用蓝色的星号画图; 并且画出其包络线 的图像,用红色的点划线画图。 2、用fplot和ezplot命令绘出函数 在区间[1,10] 上的图像。 3、在同一图形窗口画三个子图

4、绘制圆锥螺线的图像并加各种标注,其参数方程为: 5、用mesh与surf命令绘制三维曲面z=x2+3y2的图像,并使用不同的着色效果及 光照效果。