第5章MATLAB图形绘制

合集下载

Get清风MATLAB教程a第5章习题解答张志涌

Get清风MATLAB教程a第5章习题解答张志涌

MATLAB教程2012a第5章习题解答-张志涌第5章 数据和函数的可视化习题5及解答1 椭圆的长、短轴2,4==b a ,用“小红点线〞画椭圆⎩⎨⎧==tb y ta x sin cos 。

〔参见图p5-1〕〖解答〗 clf a=4;b=2;t=0:pi/80:2*pi; x=a*cos(t); y=b*sin(t);plot(x,y,'r.','MarkerSize',15) axis equal xlabel('x') ylabel('y')shg-4-3-2-101234-3-2-1123xy2 根据表达式θρcos 1-=绘制如图p5-2的心脏线。

〔提示:采用极坐标绘线指令polar 〕〖解答〗 clftheta=0:pi/50:2*pi;rho=1-cos(theta);h=polar(theta,rho,'-r');%极坐标绘线指令。

h 是所画线的图柄。

set(h,'LineWidth',4) %利用set 设置h 图形对象的“线宽〞axis square %保证坐标的圆整性0.51 1.523021060240902701203001503301800ρ=1-cos θ3 A,B,C 三个城市上半年每个月的国民生产总值如见表p5.1。

试画出如图p5-3所示的三城市上半年每月生产总值的累计直方图。

表p5.1 各城市生产总值数据〔单位:亿元〕城市 1月 2月 3月 4月 5月 6月 A 170 120 180 200 190 220 B 120 100 110 180 170 180 C 70508010095120〖目的〗● 借助MATLAB 的帮助系统,学习直方图指令polar 的使用。

● bar 指令常用格式之一:bar(x,Y,'style') 。

x 是自变量列向量;Y 是与x 行数相同的矩阵,Y 的每一行被作为“一组〞数据;style 取stacked 时,同一组数据中每个元素对应的直方条被相互层叠。

MATLAB第五章实验报告

MATLAB第五章实验报告

MATLAB第五章实验报告---matlab绘图陈录平工自03-1 030544103一,1,x=0:0.1:100;y=x-(x.*x.*x)/6;>> plot(x,y)2,>> x=0:0.1:200;>> y=exp(-(x.*x)/2)/(2*pi);>> plot(x,y)3,>> x=0:0.1:200;y=sqrt((64-x.*x)/2);>> plot(x,y)4,t=0:0.1*pi:2*pi;x=t.*sin(t);>> y=t.*cos(t);>> plot(x,y)二,t=0:0.01*pi:2*pi;x1=t;x2=sin(3.*t).*cos(t);y2=sin(3.*t).*sin(t);y1=2*x1-0.5;x=[x1;x2]';y=[y1;y2]';k=find(abs(y1-y2)<0.01);xi=x(k);yi=2*x1-0.5;plot(x,y,'k:',xi,yi,'bp')三,x=1:0.01:10;y=sin(1./x);>> plot(x,y)>> fplot('sin(1./x)',[1,10],0.001)四,t=(-pi):0.1*pi:pi;y=1./(1+exp(-t));subplot(2,2,1);bar(t,y,'g');title('bar(t,y,"g")');axis([0,7,-2,2]); subplot(2,2,2);stairs(t,y,'b');title('stairs(t,y,"b")');axis([0,7,-2, 2]);subplot(2,2,3);stem(t,y,'k');title('stem(t,y,"k")');axis([0,7,-2,2]); subplot(2,2,4);fill(t,y,'y');title('fill(t,y,"y")');axis([0,7,-2,2]); 五,1,t=0:pi/10:2*pi;r=5*cos(t)+4;>> polar(t,r,'-*');2,t=pi:pi/10:3*pi;r=12./sqrt(t);>> polar(t,r,'-*');3,t=-pi/3:pi/20:pi/3;>> r=5*sin(t).*sin(t)./cos(t);>> polar(t,r,'-*');4,t=-pi/6:pi/20:pi/6;r=3*sin(t).*cos(t)./(sin(t).*sin(t).*sin(t)+cos(t).*cos(t).*cos(t)); >> polar(t,r,'-*');六,1,t=0:pi/100:2*pi;x=exp(-t/20).*cos(t); y=exp(-t/20).*sin(t);z=t;plot3(x,y,z);title('line in 3-D Space');xlabel('X');ylabel('Y');zlabel('Z');grid on;2,t=0:0.001:1;>> x=t;>> y=t.*t;>> z=t.*t.*t;>> plot3(x,y,z);title('line in 3-D Space');xlabel('X');ylabel('Y');zlabel('Z');grid on;七1,[x,y]=meshgrid(-5:0.01:5);z=5;mesh(x,y,z);axis([-5 5 -5 5 0 5]); 2,[x,y]=meshgrid(-3:0.01:3);z=-5./(1+x.*x+y.*y);mesh(x,y,z);axis([-3 3 -3 3 -5 0]); 八[x,y,z]=sphere(50);m=moviein(30);for i=1:30surf(i*x,i*y,i*z)m(:,i)=getframe;endmovie(m,10);。

第5章MATLAB绘图_习题答案

第5章MATLAB绘图_习题答案

第5章MATLAB绘图习题5一、选择题1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制()条曲线。

DA.12B.7C.4D.32.下列程序的运行结果是()。

Ax=0:pi/100:2*pi;forn=1:2:10plot(n*sin(x),n*cos(x))holdonendaxissquareA.5个同心圆B.5根平行线C.一根正弦曲线和一根余弦曲线D.5根正弦曲线和5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}')执行后,得到的标注效果是()。

C A.{\alpha}+{\beta}B.αβ}C.α+βD.αβ4.subplot(2,2,3)是指()的子图。

AA.两行两列的左下图B.两行两列的右下图C.两行两列的左上图D.两行两列的右上图x的曲线绘制成直线,应采用的绘图函数是()。

C5.要使函数y=2eA.polarB.semilogxC.semilogyD.loglog6.下列程序的运行结果是()。

B[x,y]=meshgrid(1:5);surf(x,y,5*ones(size(x)));A.z=x+y平面B.与xy平面平行的平面C.与xy平面垂直的平面D.z=5x平面7.下列函数中不能用于隐函数绘图的是()。

DA.ezmeshB.ezsurfC.ezplotD.plot38.下列程序运行后,看到的图形()。

Ct=0:pi/20:2*pi;[x,y]=meshgrid(-8:0.5:8);z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps);surf(x,y,z)view(0,90);axisequalA.像墨西哥帽子B.是空心的圆C.边界是正方形D.是实心的圆9.下列程序运行后得到的图形是()。

A[x,y]=meshgrid(-2:2);z=x+y;i=find(abs(x)<1&abs(y)<1);z(i)=NaN;surf(x,y,z);shadinginterpA.在一个正方形的正中心挖掉了一个小的正方形B.在一个正方形的正中心挖掉了一个小的长方形C.在一个正方形的上端挖掉了一个小的正方形D.在一个正方形的下端挖掉了一个小的正方形10.在使用MATLAB“绘图”选项卡中的命令按钮绘图之前,需要()。

第5章matlab绘制二维图形及三维图形的方法

第5章matlab绘制二维图形及三维图形的方法

实验四
专业:电子信息工程2班姓名:李书杰学号:3121003210
一、实验目的
1.掌握绘制二维图形及三维图形的方法。

2.掌握图形控制与修饰处理的方法。

3.了解图像处理及动画制作的基本方法。

二、实验内容
1.绘制下列图形曲线。

(1)y=x-x^3/3! (2)x^2+2Y^2=64
解:程序如下
2.设y=1/(1+e^-t),-pi<=t<=pi,在同一个图形窗口中采用子图的形式绘制条形图、阶梯图、杆图和对数坐标等不同图形,并对不同图形加标注说明。

解:程序如下
3.绘制下列极坐标图。

(1)ρ=5cosθ+4 (2)γ=5sin^2φ/cosφ,-π/3<φ<π/3 解:程序如下
思考练习:
2.绘制下列曲线
(1)y=1/2πe^(-x^2/2) (2)x=tsint y=tcost
解:程序如下
(1)
结果如下:
(2)
结果如下:
3.在同一坐标中绘制下列两条曲线并标注两曲线交叉点。

(1)y=2x-0.5
(2)x=sin(3t)cost
Y=sin(3t)sint
解:程序如下
4.分别用plot和fplot函数绘制y=sin(1/x)的曲线,分析两曲线的差别。

解:程序如下
结果如下:
5.绘制下列极坐标图:
(1)p=12/sqrt(θ) (2)γ=3asinφcosφ/(sin^3φ+cos^3φ)解:程序如下
结果如下:。

MATLAB基础及应用课件(下)第5-8章

MATLAB基础及应用课件(下)第5-8章
图5-4中间的下拉框可以选择拟合算法,可以 试用多种拟合算法,以找出最佳拟合图形。例 如选择Smoothing Spline(平滑样条函数), 观察Curve Fitting Tool窗口,如图5-5所示。
图5-5 拟合曲线
第5章 MATLAB数值计算
第5章 MATLAB数值计算
5.4.4 图形窗口的拟合和统计工具
第5章 MATLAB数值计算
在图5-6中的“绘制拟合图”中选择拟合方 法(可同时选多种);
“显示方程”复核框可以选择是否在图形上 显示拟合多项式;
“绘制残差图”复核框选中时会产生第二幅 图形,该图形显示了每一个数据点与计算出来的 拟合曲线之间的距离。
例如选择“线性”和“三次方”拟合方法, 同时选中两个复核框,产生图形如图5-7所示。
MATLAB的图形窗口中提供了简单方便的数 据拟合和基本统计工具。
数据拟合工具可以对所绘制的曲线使用多种 方法进行拟合;
基本统计工具可提供最小值、最大值、平均 值、中位值、标准差、数据范围等统计运算。
1.数据拟合工具
第5章 MATLAB数值计算
使用数据拟合工具首先需要创建一幅图形,在 命令行窗口输入以下程序:
两个矩阵x和y的相关系 数
第5章 MATLAB数值计算
5.2 数值运算 一、 多项式
名称
创建多项 式
求根
求值
多项式乘 法
多项式除 法
多项式求 导
函数格式 P=[ a0 a1 a2 …an-1
an] P=poly(A) roots(P) polyval(P,A)
polyvalm(P,m)
说明
P为多项式(以下各函数中P均为多项式),a0 a1 a2 … an-1 an为按降幂顺序排列的多项式系数 A为向量。创建以向量A中元素为根的多项式

自动控制原理的MATLAB仿真与实践第5章 线性系统的频域分析

自动控制原理的MATLAB仿真与实践第5章  线性系统的频域分析
MATLAB提供了许多用于线性系统频率分析 的函数命令,可用于系统频域的响应曲线、参数分析 和系统设计等。常用的频率特性函数命令格式及其功 能见表5-1。 bode (G):绘制传递函数的伯德图。其中:G为传递
函数模型,如:tf(), zpk(), ss()。 bode(num,den):num,den分别为传递函数的分子与
margin(G);[Gm,Pm,Wcg,Wcp]= margin(G): 直接求出系统G的幅值裕度和相角裕度。 其中:Gm幅值裕度;Pm相位裕度;Wcg幅值裕度 处对应的频率ωc;Wcp相位裕度处对应的频率ωg。
nichols(G);nichols(G,w):绘制单位反馈系统开环传 递尼科尔斯曲线。
20
>>clear; num=[2, 3];den=[1, 2, 5, 7]; %G(s)的分子分母 多项式系数向量
p=roots(den) 求根结果:
%求系统的极点
p=
-0.1981 + 2.0797i
-0.1981 - 2.0797i
-1.6038 可见全为负根,则s右半平面极点数P=0。 绘制Nyquist曲线: >> nyquist(num,den) %绘制Nyquist曲线
本节分别介绍利用MATLAB进行频域绘图和频 率分析的基本方法。
6
5.2.1 Nyquist曲线和Bode图
MATLAB频率特性包括幅频特性和相频特性。 当用极坐标图描述系统的幅相频特性时,通常称为 奈奎斯特(Nyquist)曲线;用半对数坐标描述系 统的幅频特性和相频特性时,称为伯德(Bode) 图;在对数幅值-相角坐标系上绘制等闭环参数( M和N)轨迹图,称为尼克尔斯(Nichols)图。

第5章 Matlab图形用户界面(GUI)编程

第5章 Matlab图形用户界面(GUI)编程

figure figure
figure figure axes axes axes
补片patch
矩形rectangle 曲面surface 文本text
axes
axes axes axes
创建有边界的填充多边形
从椭圆到矩形变化的二维形状 将数据作为x-y平面高度创建的三维矩阵数据描述 字符串,它的位置由其父对象来指定
BusyAction
ButtonDownFcn
Children
Clipping CreateFcn DeleteFcn
保存对象的所有子对象句柄的向量
图形对象显示模式。’on’(缺省值):只显示在坐标轴界限内的部分图形对象; ’off’:同时显示坐标轴界限内外的部分 创建图形对象时执行的回调函数,常用缺省值 用户销毁图形对象时执行的回调函数
三、 图形对象的属性
图形对象的属性可以控制对象的外观和行为等许多方面的
性质。 对象的属性既包括对象的一般信息,例如对象的类型、父 对象和子对象等;又包括对象的特定的、独一无二的信息,例 如figure对象中对鼠标控制的WindowButtonDownFcn、 WindowButtonMotionFcn等属性。 MATLAB将图形对象的信息组织成一个层次表,并将这些信 息储存在该对象的属性中。例如,root属性表包括当前图形窗 口的句柄和当前的指针位置;figure属性表包括其子对象的列 表并始终跟踪窗口中发生的特定事件,等等。
HandleVisibility
控制对象句柄的访问方式。 ‘on’:(缺省值),总是可以访问; ‘callback’:只有回调函数或者调用回调函数的函数可以访问,这样可以防止用户从命 令行中对图形对象进行修改,以防止误操作; ‘off’:不可访问。

MATLAB应用第五章-MATLAB图形和3D可视化

MATLAB应用第五章-MATLAB图形和3D可视化
”Plot_eg02”
th=[0:pi/50:3*pi]'; a=[0.5:0.5:5.5] Y=cos(th)*a; X=sin(th)*sqrt(25-a.^2); plot(X,Y) axis('equal') xlabel('X') ylabel('Y') title('a group of Ellipse lines')
F5运行结果如图 Eg 5-5
若没有axis(‘equal’)则显示如下: equal 将x和y轴的坐标进行比例协调,使其显 示相等。
5.2.2 线型、顶点标记和颜色
色彩(c) 说明 数据点(m) r g b c m y k w 红色 绿色 蓝色 青色 洋红 黄色 黑色 白色 + O * . x s d ^ v > < p h 说明 加号 圆圈 星号 点 十字 矩形 菱形 上三角 下三角 右三角 左三角 五边形 六边形 Eg 5-6 线型( ) 线型(l) -: -. 说明 实线 虚线 点线 点划 线
Eg 5-11 pie(x):对所有向量x中的元素进行总计,显示每一部 分所占比例 pie(x,explode):定义一个与x同长度向量explode,对 应于非零元素的x值被抽出显示 pie(…,labels):标注扇形图,labels必须与前面向量具 有相同长度
Eg 5-12
在命令窗口输入下列命令” 在命令窗口输入下列命令” >> x=1:12; >> y=[-12 -6 4 11 23 26 36 30 21 17 10 3]; >> bar(x,y) >> xlabel('month'),ylabel('tempereature'); >> title('relationship')

第五章 MATLAB绘图

第五章 MATLAB绘图

p=[22,60,88,95,56,2 3,9,10,14,81,56,23]; plot(p)
实例分析 用不同线型和颜色在同一坐标内绘制曲线y=2e例5.3 用不同线型和颜色在同一坐标内绘制曲线 0.5xsin(2πx)及其包络线。 及其包络线。 及其包络线
x=(0:pi/100:2*pi)'; y1=2*exp(-0.5*x)*[1,-1]; y2=2*exp(-0.5*x).*sin(2*pi*x); x1=(0:12)/2; y3=2*exp(-0.5*x1).*sin(2*pi*x1); plot(x,y1,'g:',x,y2,'b--',x1,y3,'rp');
第一节 二维图形
gtext('字符串 :利用鼠标在图形的某一位置标示字符串 字符串'): 字符串 legend('字符串 字符串 字符串1','字符串 字符串n'): 字符串 字符串2',…,'字符串 :在屏幕上开启 字符串 一个小视窗,然后依据绘图命令的先后次序, 一个小视窗,然后依据绘图命令的先后次序,用对应的字符 串区分图形上的线。 串区分图形上的线。 输入特殊的文字需要用反斜杠( ) 输入特殊的文字需要用反斜杠(\)开头 选择图像 figure(1); figure(2); …; figure(n) 打开不同的图形窗口, 打开不同的图形窗口,以便绘制不同的图形
第一节 二维图形 2. 线型和颜色 plot 函数可设置曲线的线段类型、定点标记和线段颜色 函数可设置曲线的线段类型 线段类型、 常用的线段、 常用的线段、颜色与定点标记参数
实例分析
例5.1 在0≤X≤2π区间内,绘制曲线 π区间内,绘制曲线y=2e-0.5Xsin(2πx)。 。

第5章MATLAB绘图99930资料

第5章MATLAB绘图99930资料
title('stairs(x,y,''b'')'); axis([0,7,0,2]); subplot(2,2,4);stem(x,y,'k'); title('stem(x,y,''k'')'); axis([0,7,0,2]);
程序如下:
x=(0:pi/100:2*pi)';
y1=2*exp(-0.5*x)*[1,-1];
y2=2*exp(-0.5*x).*sin(2*pi*x);
plot(x,y1,'b:'); axis([0,2*pi,-2,2]); %设置坐标 hold on; %设置图形保持状态
plot(x,y2,'k');
参数的grid命令在两种状态之间进行切换。 box on/off命令控制是加还是不加边框线,不带
参数的box命令在两种状态之间进行切换。
例5.5 绘制分段函数曲线并添加图形标注。
程序如下:
x=linspace(0,10,100);
y=[];
for x0=x
if x0>=8
y=[y,1];
elseif x0>=6
subplot(4,4,8);
%选择4×4个区中的8号区
plot(x,ct);title('cotangent(x)');axis ([0,2*pi,-40,40]);
对图形窗口灵活分割。
5.1.3 绘制二维图形的其他函数 1. 其他形式的线性直角坐标图
在线性直角坐标系中,其他形式的图形有 条形图、阶梯图、杆图和填充图等,所 采用的函数分别是:
当前图形窗口,图形窗口原有图形将不复 存在。若希望在已存在的图形上再继续添 加新的图形,可使用图形保持命令hold。 hold on/off命令控制是保持原有图形还是刷 新原有图形,不带参数的hold命令在两种状 态之间进行切换。

实验06_高层绘图操作(第5章)

实验06_高层绘图操作(第5章)
程序:
x=linspace(-5,5,21);
y=linspace(0,10,31);
[X,Y]=meshgrid(x,y);
Z=cos(X).*cos(Y).*exp(-sqrt(X.^2+Y.^2)/4);
subplot(2,1,1);surf(X,Y,Z);
subplot(2,1,2);contour3(X,Y,Z);
subplot(2,2,4);fill(x,y3,'g');%填充图
图形:
3. 绘制分段函数的曲线
已知
在-5≤x≤5区间绘制函数曲线。(注意:本曲线不连续!)
程序:
fplot('(x+sqrt(pi))/exp(2)',[-5,0]);
holdon;
fplot('log(x+sqrt(1+x^2))/2',[0,5]);
x
\0

\rceil
ù
\surd

\midபைடு நூலகம்
附参考答案:
实验06高层绘图操作
(第5章MATLAB绘图)
一、实验目的
1. 掌握绘制二维图形的常用函数。
2. 掌握绘制三维图形的常用函数。
3. 掌握绘制图形的辅助操作。
二、实验内容
1. 绘制函数的曲线
设 ,在x=0~2π区间取101点,绘制函数的曲线。
程序:
x=linspace(0,2*pi,101);

%一个单位圆,一个复数参数
t=0:0.01:2*pi;
x=exp(i*t);%cos(t)+i*sin(t)
plot(x); axisequal;

第5章 MATLAB绘图_习题答案

第5章  MATLAB绘图_习题答案

第5章 MATLAB绘图习题5一、选择题1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制()条曲线。

DA.12 B.7 C.4 D.32.下列程序的运行结果是()。

Ax=0:pi/100:2*pi;for n=1:2:10plot(n*sin(x),n*cos(x))hold onendaxis squareA.5个同心圆B.5根平行线C.一根正弦曲线和一根余弦曲线D.5根正弦曲线和5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}')执行后,得到的标注效果是()。

CA.{\alpha}+{\beta} B.{\α}+{\β} C.α+βD.\α+\β4.subplot(2,2,3)是指()的子图。

AA.两行两列的左下图B.两行两列的右下图C.两行两列的左上图D.两行两列的右上图5.要使函数y=2e x的曲线绘制成直线,应采用的绘图函数是()。

CA.polar B.semilogx C.semilogy D.loglog6.下列程序的运行结果是()。

B[x,y]=meshgrid(1:5);surf(x,y,5*ones(size(x)));A.z=x+y平面B.与xy平面平行的平面C.与xy平面垂直的平面D.z=5x平面7.下列函数中不能用于隐函数绘图的是()。

DA.ezmesh B.ezsurf C.ezplot D.plot38.下列程序运行后,看到的图形()。

Ct=0:pi/20:2*pi;[x,y]=meshgrid(-8:0.5:8);z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps);surf(x,y,z)view(0,90);axis equalA.像墨西哥帽子B.是空心的圆C.边界是正方形D.是实心的圆9.下列程序运行后得到的图形是()。

A[x,y]=meshgrid(-2:2);z=x+y;i=find(abs(x)<1 & abs(y)<1);z(i)=NaN;surf(x,y,z);shading interpA.在一个正方形的正中心挖掉了一个小的正方形B.在一个正方形的正中心挖掉了一个小的长方形C.在一个正方形的上端挖掉了一个小的正方形D.在一个正方形的下端挖掉了一个小的正方形10.在使用MA TLAB“绘图”选项卡中的命令按钮绘图之前,需要()。

matlab第5章

matlab第5章
如:step(sys1, ’r’, sys2, ’y--’, sys3, ’gx’)
③返回响应输出值:[y, x, t]=step(num, den)
[y, x, t]=step(num,den,t)
t:仿真时间,由系统模型的特性自动生成。
状态变量x返回为空矩阵。 可省略不写。
3
s 1 【例】已知传递函数模型 G ( s) 2 s s5 绘制单位阶跃响应曲线。
(1)max(A) :返回一个行向量,向量的第i个元素是矩
阵A的第i列上的最大值。
(2)[Y,U]=max(A) :返回行向量Y和U,Y表示A中每 列的最大值,U对应每列最大值的行号。
30
31
超调量
C= dcgain (G)
[Y,k]=max(y)
%求系统的稳态值
%求y的峰值及峰值采样点
percentovershoot=100*(Y-C)/C %计算超调量
减法:math operations →subtract
传递函数: continuous →transfer Fcn 输入、输出信号组合:Signal Routing→Mux 示波器模块:sinks→scope
图5.13 simulink模型
20
图5.14 锯齿波参数设置界面
21
模型连好后仿真,仿真结束后双击示波器,
f (t ) e2t 时,系统的零状态响应曲线。 求当输入信号为



9
5.3.1.2 时域响应应用举例
【例5.1】已知系统的闭环传递函数为
1 G( s) 2 s 0.4s 1
求单位阶跃响应曲线和单位斜坡响应曲线。
10
解:MATLAB程序代码如下:

第5章 MATLAB绘图

第5章  MATLAB绘图
图形上添加希腊字母、数学符号及公式等内容。 例如,text(0.3,0.5,‘sin({\omega}t+{\beta})’)将得到 标注效果sin(ωt+β)。
例5-7 在0≤x≤2区间内,绘制曲线y1=2e-0.5x和 y2=cos(4πx),并给图形添加图形标注。
程序如下:
x=0:pi/100:2*pi;
y坐标数据。
例5-1 在0≤x≤2区间内,绘制曲线 y=2e-0.5xcos(4πx)
程序如下: x=0:pi/100:2*pi; y=2*exp(-0.5*x).*cos(4*pi*x); plot(x,y)
例5-2 绘制曲线。 程序如下: t=0:0.1:2*pi; x=t.*sin(3*t); y=t.*sin(t).*sin(t); plot(x,y);
例5-9 用fplot函数绘制f(x)=cos(tan(πx))的曲线。 命令如下: fplot('cos(tan(pi*x))',[ 0,1],1e-4)
5.1.7 图形窗口的分割
subplot函数的调用格式为:
subplot(m,n,p)
该函数将当前图形窗口分成m×n个绘图区, 即每行n个,共m行,区号按行优先编号, 且选定第p个区为当前活动区。在每一个绘 图区允许以不同的坐标系单独绘制图形。
第5章 MATLAB绘图 5.1 二维数据曲线图 5.2 其他二维图形 5.3 隐函数绘图 5.4 三维图形 5.5 图形修饰处理 5.6 图像处理与动画制作
5.1 二维数据曲线图 5.1.1 绘制单根二维曲线 plot函数的基本调用格式为:
plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐标和
(2) 当x,y是同维矩阵时,则以x,y对应列元素为横、 纵坐标分别绘制曲线,曲线条数等于矩阵的列数。

MATLAB三维绘图

MATLAB三维绘图

第7讲 绘制三维图(第5章MATLAB 绘图)目的:1.掌握绘制三维图形的方法。

2.掌握绘制图形的辅助操作。

一、绘图时点坐标矩阵的生成。

绘图函数使用描点法绘图,所以在绘图前,需要建立空间点的概念,空间中的点需要三个坐标(,,)x y z ,matlab 使用三个矩阵来存储点的三个坐标,一个矩阵(比如A )存储点的x 坐标,一个矩阵(比如B )存储点的y 坐标,一个矩阵(比如C )存储点的z 坐标。

其中A 、B 、C 三矩阵是同型矩阵。

例如设矩阵123112X ⎛⎫⎪= ⎪ ⎪⎝⎭,014221Y −⎛⎫ ⎪= ⎪ ⎪⎝⎭,510113Z ⎛⎫ ⎪= ⎪ ⎪−⎝⎭则,matlab 绘图函数将绘制点()()1,0,5,(2,1,1),(3,4,0),,2,1,3−共6个点。

如果点的坐标没有规律那么我们需要手工输入坐标矩阵。

如果点的坐标有规律,那么我们可以使用矩阵运算或者matlab 产生点的函数来生成坐标矩阵。

例如,假设空间中点的纵横坐标如下图所示:图中点的坐标有规律:横坐标是(1,2,3,4),纵坐标是(1,2,3),所以可以使用如下方法得到点的坐标矩阵。

方法一:>> a=[1,2,3,4];b=[1,2,3];i=ones(1,3);j=ones(1,4);>>x=i’ *a; y=b‘ *j;方法二:使用matlab系统函数meshgrid(推荐使用)>> a=[1,2,3,4]; b=[1,2,3];>>[x,y]=meshgrid(a,b) % 该函数生成的x,y矩阵和方法一相同。

------------------我是华丽分割线-----------------除meshgrid外,还可以用peaks、cylinder函数等生成点坐标矩阵。

peaks(n): 本身是一个创建具有多个峰值的曲面图,例如:>> peaks(30) %产生的图如下:在matlab中可以使用,例如:命令[x,y,z]=peaks(30)取出曲面点的三个坐标矩阵x,y,z;[a,b]=peaks(30)取出曲面点的前两坐标矩阵x,y;%可以用逻辑运算a==x,b==y验证注意:命令a=peaks(30)取出的a不是曲面点的x坐标,而是点的z坐标;可以用二维绘图函数scatter(x,y)绘制散点图观察取出的坐标点:>>[x,y]=peaks(8);>>scatter(x,y)另一个可以用来取坐标点的函数是sphere(n),命令sphere(n):绘制一个具有n个纵列的单位球面。

第5章_MATLAB绘图

第5章_MATLAB绘图
第5章 MATLAB 绘图
参考教材 : MATLAB程序设计与应用(第二版) 刘卫国 主编 高等教育出版社
计算机学院 郭江鸿 21B434 82519604
5.1 二维图形 5.1.1 绘制二维曲线 1. plot函数的基本调用格式为: plot(x , y) 其中x和y为长度相同的向量,分别用于 存储二维曲线的x坐标和y坐标数据。
90 0.5 120 0.4 60
0.3 150 0.2 30
0.1
180
0
210
330
240 270
300
3.对数坐标图形 MATLAB提供了绘制对数和半对数坐标曲线 的函数,调用格式为: semilogx(x1,y1,选项1,x2,y2,选项2,…) semilogy(x1,y1,选项1,x2,y2,选项2,…) loglog(x1,y1,选项1,x2,y2,选项2,…) 例5.10 绘制y=10x2的对数坐标图并与直角线性 坐标图进行比较。
Line in 3-D Space
5
Z
0
origin
-5 -5 -5 0 5 5 X Y 0
0.8 0.6 0.4
t=0:0.15:2*pi; x=sin(t); y=cos(t); z=cos(2*t); plot3(x,y,z,'b-',x,y,z, 'rd')
axis([0 10 0 2.5]) %设置坐标轴刻度范围
例5.5 绘制分段函数曲线并添加图形标注。
x=linspace(0,10,100); y=[ ]; for x0=x if x0>=8 y = [y,1]; elseif x0>=6 y = [y,5-x0/2]; elseif x0>=4 y = [y , 2]; elseif x0>=0 y = [y,sqrt(x0)]; end end plot(x,y) axis([0 10 0 2.5]) title('分段函数曲线'); xlabel('Variable X'); ylabel('Variable Y');

第5章 MATLAB绘图_习题答案

第5章  MATLAB绘图_习题答案

第5章MATLAB绘图习题5一、选择题1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制( )条曲线。

DA。

12 B。

7 C.4 D.32.下列程序得运行结果就是()。

Ax=0:pi/100:2*pi;for n=1:2:10plot(n*sin(x),n*cos(x))hold onendaxissquareA。

5个同心圆B.5根平行线C.一根正弦曲线与一根余弦曲线 D.5根正弦曲线与5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}’)执行后,得到得标注效果就是( )。

CA.{\alpha}+{\beta}B。

{\α}+{\β} C.α+βD.\α+\β4。

subplot(2,2,3)就是指( )得子图。

AA.两行两列得左下图B.两行两列得右下图C.两行两列得左上图D.两行两列得右上图5。

要使函数y=2ex得曲线绘制成直线,应采用得绘图函数就是().CA.polarB。

semilogxC。

semilogy D。

loglog6.下列程序得运行结果就是( )。

B[x,y]=meshgrid(1:5);surf(x,y,5*ones(size(x)));A.z=x+y平面B.与xy平面平行得平面C。

与xy平面垂直得平面 D.z=5x平面7.下列函数中不能用于隐函数绘图得就是()。

DA.ezmeshB.ezsurfC.ezplotD.plot38.下列程序运行后,瞧到得图形().Ct=0:pi/20:2*pi;[x,y]=meshgrid(-8:0、5:8);z=sin(sqrt(x、^2+y、^2))、/sqrt(x、^2+y、^2+eps);surf(x,y,z)view(0,90);axis equalA.像墨西哥帽子 B.就是空心得圆C。

边界就是正方形D.就是实心得圆9。

下列程序运行后得到得图形就是( ).A[x,y]=meshgrid(-2:2);z=x+y;i=find(abs(x)<1 & abs(y)<1);z(i)=NaN;surf(x,y,z);shadinginterpA。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6




例5-1 图形的基本绘制 x=0:0.1:2*pi; plot(x,sin(x)) hold on plot(x,cos(x),'ro') title('y1=sin(x),y2=cos(x)') %添加标题 xlabel('x') %添加横坐标名 legend('sin(x)','cos(x)',4) %在右下角添加图例图4.10 添加图形标注 text(pi,sin(pi),'x=pi') %在pi,sin(pi)处添加文字注释
polar()函数用来绘制极坐标图 语法规则: polar(极角, 极径,’选项’) 例如: t=0:0.1:8*pi; r=2*sin(t/2); polar(t,r,'r'); title('双心脏线');

5.2.5fplot()函数
前面介绍了这些函数,思路都是先取足够稠密的 自变量向量x,然后计算函数值向量y,最后绘出 函数图。在取数据点时一般都是等间隔采样,因 此绘制高频率变化的函数不够精确。为了提高精 度,绘制出比较真实的函数曲线,通常采用精度 绘制fplot()函数,该函数自适应地对函数进行采 样,更好的反应函数的变化规律。 语法规则:
5
⑤用名称、图例、坐标名、文本等对图形进行注 释,常用典型指令如下。 xlabel('x') ylabel('y') title('图1') text(x,y,'y=f(x)') legend(‘s’,pos) %在指定位置建立图例 s 其中,pos是图例在图上位置的指定符,取值为0,1 ,2,3,4,-1分别表示自动取最佳位置,右上角( 默认),左上角,左下角,右下角,图右侧添加图例 ⑥打印输出图形,常用典型指令如下。 print–dps2
在上述步骤中,(1)、(3)是最基本、最常用 的绘图步骤。一般情况下,由这两步所画出的图 形已经比较完整,至于其他步骤,并不是必需的。 步骤(2)一般在图形较多的情况下使用,比如要把 几个图放到一起进行比较,此时可根据所作图形 的个数对subplot(m, n, k)指令中的m、n进行赋 值。步骤(4)、(5)的前后次序可按照指令的常用 程度和复杂程度编排,用户可根据自己的需要改 变前后次序。
x=[0:1:6]'; y= [sin(x),cos(x)]; plot(x,y)
3)自变量x和y为同维矩阵
绘制以它们的对应列为横、纵坐标的多条曲线 例如: t=linspace(0,2*pi,100); x=[t;t]; y=[sin(t);cos(t)]; plot(x,y)
5.2.1 plot()函数
语法规则: 1.plot(y) %绘制以y为纵坐标的二维曲线 2.plot(x,y) %绘制以x为横坐标y为纵坐标的二维曲线 3.plot(x1,y1,x2,y2,...,xn,yn) %绘制多个二维图形曲线 4.plot(x1,y1,’选项’,x2,y2,’选项’,...xn,yn,’选项 ’) 选项:包括线型、颜色和标记符号等,见表一 其中自变量x和y既可以是向量也可以是数组
>>x1=0:pi/100:2*pi;x2=0:pi/100:2*pi; y1=exp(-0.5*x1).*sin(2*pi*x1); y2=1.5*exp(-0.2*x2).*sin(x2); plotyy(x1,y1,x2,y2)
5.2.3stem()函数
stem(x,y)函数图形的形状为针状图,与plot的语法 规则一样,x表示横坐标,y表示纵坐标,不同的是plot 函数绘制的是连续函数,而stem函数实现的是离散序 列的绘制。 语法规则: 1)stem(y):以x=1,2,...为各点数据的x坐标以向量y的各 个对应元素为y坐标,在(x,y)坐标面画一个空心小圆圈 2)stem(x,y):以x向量的各个元素为x坐标,以y向量的 各个对应元素为y坐标,在(x,y)坐标面画一个空心小圆 圈,若画实心圆圈可以在选项处添加相应的参数filled 进行离散点的填充,最后将每个离散点都连接一条线段 到x轴。
第5讲 MATLAB图形绘制
1
本章学习目标
熟练掌握MATLAB图形绘制的基本步骤和基
本绘图命令 熟悉绘图过程中曲线颜色、线型、数据点型 的设置方法 熟练掌握典型二维图形的绘制及标注方法 掌握常见三维图形的基本绘制方法
2
主要内容

5.1 MATLAB图形绘制基础 5.2 二维图形的绘制 5.3 三维图形的绘制

例5-3 以参数方程形式的二维曲线绘制 绘制曲线:
x t cos(3t ) 2 y t sin t

t
>>t=-pi:pi/100:pi; x=t.*cos(3*t); y=t.*(sin(t)).^2 %y=t.*sin(t).*sin(t); plot(x,y)

5.2.2双纵坐标函数plotyy


为了有利于对图形数据进行对比分析,引入了 plotyy函数。 语法规则: plotyy(x1,y1,x2,y2):与plot不同的是,它具有 不同的纵坐标。

例5-5用不同标度在同一坐标内绘制曲线 y1 e 0.5 x sin(2 x )
y 2 1.5e 0.2 x sin x


例5-6 (P38例1-38)产生一个幅度为2、频率为4Hz 、相位为 / 6 的正弦信号。 补充知识: 正弦信号:x(t ) A cos(t ) a cos(t ) b sin(t ) 为初相。 其中A为振幅, 为震荡角频率,rad/s, 2 f ,f为频率,Hz。 >>A=2,f=4; phi=pi/6; omega=2*pi*f n=0:0.01:1; x=A*cos(omega*n+phi) plot(n,x); grid on

表一 线型、颜色和标识符号
线型 : -. -实线 虚线 点画线 双画线 b g r y k w 颜色 蓝色 绿色 红色 黄色 黑色 白色 . o x + * s 标识符号 点 圆圈 叉号 加号 星号 方块符
m
c
品红色
青色
v 朝下三角符号
^ 朝上三角符号
1.plot(y)



功能: (1)若y为向量,其元素为实数,则绘制以其下 标为横坐标、以y为纵坐标的图形,即相当于 plot(1:length(y),y)。 例如: x=0:1:6; y=x.^2+1; plot(y)






t=0:pi/50:4*pi; y0=exp(-t/3); y=exp(-t/3).*sin(3*t); t1=0:pi/3:4*pi y1=exp(-t1/3).*sin(3*t1) plot(t,y,'r-',t,y0,'b:',t,-y0,'b:',t1,y1,'b*') title(‘衰减震荡曲线’) xlabel('t') ylabel('y') text(3*pi/2, 0.2079,‘包络线’); text(pi,1.2893e-016,‘曲线') text(0,0,‘离散数据点') legend(‘曲线’,‘包络线’,‘包络线’,‘离散数据点')
>>A=2 phi=pi/6; OMEGA=pi/6; n=-10:10; x=A*cos(OMEGA*n+phi) stem(n,x,’filled’); grid on

振幅为2、数字角频率为 / 6 rad、相位为 / 6 的正弦序列Biblioteka 5.2.4 polar()函数
3
5.1 MATLAB图形绘制基础
MATLAB图形绘制的基本步骤
在MATLAB中,一般按照下述的几个步骤绘制图 形。 ①准备需绘制的数据或函数,常用典型指令如下。
x1=0:0.1:10; x2=linspace(0,2*pi,100); x3=(0:10:360)*pi/100; y1=exp(x1); y2=sin(x2); y3=cos(x3);
二维图形的处理
1.图形标注 在绘制图形时,对图形加上一些说明,比如图 形标题,坐标轴说明以及否些部分的含义等等。 另外文字在图形中显示包括: 用坐标轴确定文字位置:调用text()函数 用鼠标确定文字位置:调用gtext()函数 2.图形窗口的分割:调用subplot()函数
例5-8给(P38 1-37)添加图形标注
fplot(文件名,x和y的取值范围,相对允许误差,选项)




例如用fplot函数绘制’ f ( x) cos(tan( x)) 第一步: 建立myf.m文件(方法和课本36页一样) function y=myf(x) y=cos(tan(pi*x)) 第二步: 用fplot函数绘制myf.m函数的曲线; >>fplot('myf',[-0.4,1.4],1e-4) 或者直接在命令窗口输入: >>fplot(‘cos(tan(pi*x)’,[-0.4,1.4],1e-4)
3.含多个输入参数与选项的plot函数
例5-4(P38 例1-37) t t 3 3 sin 3t,其包络线为 y0 e , 画出衰减震荡曲线 y e t的取值范围是 0 x 4 >>t=0:pi/50:4*pi; y0=exp(-t/3); y=exp(-t/3).*sin(3*t); plot(t,y,'r-',t,y0,'b:',t,-y0,'b:')
相关文档
最新文档