第四章Matlab绘图

合集下载

MATLAB 第四章习题

MATLAB  第四章习题

MATLAB 第四章习题
1.绘制函数曲线y=2sin(3πt+π/4),t的范围是0~
2.
2.在同一图形窗口绘制曲线y1=sin(t),t的范围为0~4π;y2=2cos(2t),t的范围为π~3π。

要求y1曲线为黑色点画线,y2曲线为红色虚线圆圈,并在图的右下角标注2条曲线的图例(用legend),横坐标以π为单位标注,运行界面如图所示。

3.在同一图形窗口中绘制函数y=2^1/2e^(-t)sin(2πt+π/4)及其包络线图形,t的范围为【0,2】。

其运行结果如图所示。

4.在同一图形窗口中分别绘制y1=sin(2πt)、y2=cos(2πt)、y3=e^(-4t)共三条函数曲线,t的范围为[0,2].给坐标轴加上标注,给整个图形加上标题,在图形窗口添加文本字符串用于对各曲线分别加以文字说明,其运行界面如图所示。

5.绘z=xe^(-x^2+y^2)的三维曲面图和曲线图,x的范围为[-2,2],y的范围为[-2,2],并实现部分镂空。

6.绘制z=x^2+y^2的三维网线图和曲面图,x的范围为[-5,5],y的范围为[-5,5].将网线图用spring 色图并用颜色标尺显示色图,将曲面图颜色用sshading命令做连续变化。

第四章 MATLAB绘图PPT课件

第四章 MATLAB绘图PPT课件

plot3(x,y,z,’b-’);
3b)调用三维曲面绘图指令;
mesh(X,Y,Z)
17.07.2020
7
4 设置轴的范围、坐标分格线 axis([x1,x2,y1,y2,z1,z2])
grid on
5 图形注释:图名、坐标名、 Title,xlabel,ylabel,zlabel,legend,
plot(x1,y1,x2,y2) —— 多条曲线绘图格 式
17.07.2020
11
plot(x,y,’s’) —— 开关格式,开关量字 符串s设定曲线颜色和绘图方式,使用颜 色字符串的前1~3个字母,如 yellow—y表示等。
或plot(x1,y1,’s1’,x2,y2,’s2’,…)
17.07.2020
图例、文字说明
text
6 着色、明暗、灯光、材质处 Colormap,shading,light,meterial 理
7 视点、三度(横、纵、高)比 view,aspect
8 图形的精细修饰:
利用对象属性值设置 利用图形窗工具条进行
get, set
9 打印
与二维相同
17.07.2020
8
一、二维绘图
12
S的标准设定值如下:
字母 y m c r g b w k
颜色 黄色 品红 青 大红 绿色 蓝色 白色 黑色
标点 · ○ × +
- : -· (--)
线型 点线 圈线 ×线 +字线 实线 星形线 虚线 点(双)划线
17.07.2020
13
1. 单窗口单曲线绘图
例1 x=[0,0.48,0.84,1,0.91,0.6,0.14]
[x1, x2, x3, x4, x5, x6, x7,] plot (x, 'b-*')

四讲Matlab绘图ppt课件精品文档

四讲Matlab绘图ppt课件精品文档

p l o t (. . ., s t r ) 使用字符串s t r指定的颜
色和线型进行绘图。表1 中列出了s t r可
以取的值。
2019/10/12
4
一、二维图形:表一


.

^
正三角
*
星号
v
倒三角
OO
s
正方形
++
d
菱形
X 乘号
p
五角星
<
左三角
h
六角星
>
右三角
none 无点
2019/10/12
5
2019/10/12
26
三、三维图形
m e s h ( X,Y,Z ) 将矩阵Z中的各个元素作 为矩形网格上的高度,对这些值绘图,
并且将相邻的点连接形成三维网格表面 图。颜色由高度,即Z中的元素指定。
s u r f ( X , Y , Z) 绘制出由坐标(Xi j, Yi j, Zi j)确定的表面图形。如果X和Y分别是长 度为m和n的向量,那么, Z必须为m×n 的矩阵,并且表面是由(Xj, Yi, Zi j)来定 义的。
一、二维图形:表一
线型
颜色
--. : none
实线 m 虚线 b 点划线 c 点线 w 无线 r
品红色 蓝色 灰色 白色 红色
颜色
k
g
绿色 y
黑色 黄色
2019/10/12
6
一、二维图形
1.2彗星图形
c o m e t ( x , y ) 绘制向量y对向量x的彗星 轨线。如果只给出一个向量,则用该向 量对其下标值绘图。
2019/10/12
10

MATLAB绘图PPT教学课件

MATLAB绘图PPT教学课件

2020/12/10
13
五、添加图例
图例是对所绘数据曲线的说明(曲线的色彩、线型和数 据标记,简要文字说明)。用户可调用命令legend给图形 加图例。
其调用格式为:
legend ('图例说明1','图例说明2',…,Pos)
其中,Pos为把图例放在图形中的位置,“0”自动把其 置于最佳位置,“1”使之位于图形右上角(默认);“2” 置于图形左上角;“3”置于图形左下角,“4”置于右下角, ‘-1’则置于图形外部。也可用鼠标拖动改变其位置。
s同上,也可以省略。见例3-1
2020/12/10
5
例3-1:
x1=[1 2 3]; y1=[1 2 3;4 5 6]; plot(x1,y1) y2=[1 2;3 4;5 6]; plot(x1,y2) plot(y1,x1); plot(y2,x1); x2=[1 1 1;2 2 2]; plot(x2,y1)
axis([xmin xmax ymin ymax]) ——设定最大和最小值 axis auto ——坐标轴按数据大小的上下限来制定 axis square ——横轴及纵轴的比例为1:1 axis off ——关闭坐标系统 axis on ——显示坐标系统
2020/12/10
12
例:
t=0:0.1:10; y1=sin (t); plot (t,y1, 'b--'); axis off axis auto axis on axis([0 15 -1 2]) axis square
2020/12/10
8
2、fplot函数 采用自适应步长控制来绘制曲线,能更好地反应曲线
的变化规律。在曲线变化剧烈处,系统所取的数据点较 密;反之则较疏。其绘图指令运行的时间较长。

第4章 MATLAB绘图ppt课件

第4章  MATLAB绘图ppt课件
plotyy(x1,y1,x2,y2)
其中x1—y1对应一条曲线,x2—y2对应 另一条曲线。横坐标的标度相同,纵坐 标有两个,左纵坐标用于x1—y1数据对, 右纵坐标用于x2—y2数据对。
精品课件
目录 17
例4.4 用不同标度在同一坐标内绘制曲线 y1=e-0.5xsin(2πx)
及曲线y2=1.5e-0.1xsin(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');
目录
精品课件
16
4.双纵坐标函数plotyy
plotyy函数是MATLAB 5.X新增的函数。 它能把函数值具有不同量纲、不同数量 级的两个函数绘制在同一坐标中。调用 格式为:
plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐
标和y坐标数据。条件是元素个数能对应。
精品课件
目录 4
例4.1 在0≤X≤2区间内,绘制 曲线y=2e-0.5xsin(2πx)。
程序如下:>> x=0:pi/100:2*pi;
y=2*exp(-0.5*x).*sin(2*pi*x); plot(x,y)
可搭配使用,如选项“ro” 表示绘制红色的圆划线,“y-”表
示黄色的实划线。
精品课件
14
例 用不同线型和颜色在同一坐标内绘制曲 线y=sinx,y=cosx的图像。
程序如下:
x=linspace(0,2*pi,100); plot(x,sin(x),‘kh’,x,cos(x),‘gp’) %正、余弦曲

MATLAB基础知识及常用功能介绍

MATLAB基础知识及常用功能介绍

MATLAB基础知识及常用功能介绍第一章:MATLAB简介及安装MATLAB是一种强大且广泛应用的数值计算软件,它提供了许多用于科学计算和工程设计的功能。

MATLAB是矩阵实验室(Matrix Laboratory)的缩写,其主要特点是在操作矩阵和各种数学函数上非常高效。

要安装MATLAB,只需下载安装程序然后按照提示进行安装即可。

第二章:MATLAB基本操作在MATLAB中,可以使用各种命令来进行基本的数学运算,例如加减乘除、幂运算等。

此外,还可以定义变量、矩阵和向量,并进行复杂的数学运算。

提示:使用分号可以取消输出结果。

第三章:MATLAB脚本和函数脚本是一系列MATLAB命令的集合,可以保存并重复执行。

函数是一段具有输入和输出的可执行代码块,可以通过函数名和输入参数来调用。

编写脚本和函数有助于提高代码的可读性和可重复性。

第四章:MATLAB图形化界面MATLAB提供了图形化界面(GUI)工具箱,用于创建交互式应用程序和图形用户界面。

利用GUI工具箱,可以通过拖拽和放置的方式创建界面,并通过设置属性和回调函数实现交互功能。

第五章:MATLAB数据可视化MATLAB拥有丰富的数据可视化功能,可以将数据以各种图表形式呈现出来,如散点图、柱状图、曲线图等。

此外,还可以对图表进行自定义设置,如添加图例、调整轴范围、添加标题等。

第六章:MATLAB图像处理MATLAB提供了强大的图像处理工具箱,可以用于图像的滤波、锐化、模糊、边缘检测等操作。

此外,还可以进行图像的变换和特征提取,用于图像识别和分析。

第七章:MATLAB信号处理MATLAB信号处理工具箱提供了一系列用于处理、分析和合成信号的函数和工具。

可以进行信号滤波、频谱分析、时域分析等操作。

此外,还可以进行数字滤波器设计和滤波器实现。

第八章:MATLAB数学建模MATLAB是数学建模的重要工具,可以用于建立各种数学模型并进行仿真和优化。

可以利用MATLAB解方程、求解微分方程、进行符号计算等,用于解决各种实际问题。

matlab课后习题答案第四章

matlab课后习题答案第四章

第4章数值运算习题 4 及解答1 根据题给的模拟实际测量数据的一组t和)(t y试用数值差分diff或数值梯度gradient指令计算)(t y',然后把)(t y和)(t y'曲线绘制在同一张图上,观察数值求导的后果。

(模拟数据从prob_data401.mat 获得)〖目的〗●强调:要非常慎用数值导数计算。

●练习mat数据文件中数据的获取。

●实验数据求导的后果●把两条曲线绘制在同一图上的一种方法。

〖解答〗(1)从数据文件获得数据的指令假如prob_data401.mat文件在当前目录或搜索路径上clearload prob_data401.mat(2)用diff求导的指令dt=t(2)-t(1);yc=diff(y)/dt; %注意yc的长度将比y短1plot(t,y,'b',t(2:end),yc,'r')grid on(3)用gradent 求导的指令(图形与上相似)dt=t(2)-t(1);yc=gradient(y)/dt;plot(t,y,'b',t,yc,'r')grid on〖说明〗● 不到万不得已,不要进行数值求导。

● 假若一定要计算数值导数,自变量增量dt 要取得比原有数据相对误差高1、2个量级以上。

● 求导会使数据中原有的噪声放大。

2 采用数值计算方法,画出dt tt x y x ⎰=0sin )(在]10 ,0[区间曲线,并计算)5.4(y 。

〖提示〗● 指定区间内的积分函数可用cumtrapz 指令给出。

● )5.4(y 在计算要求不太高的地方可用find 指令算得。

〖目的〗● 指定区间内的积分函数的数值计算法和cumtrapz 指令。

● find 指令的应用。

〖解答〗dt=1e-4;t=0:dt:10;t=t+(t==0)*eps;f=sin(t)./t;s=cumtrapz(f)*dt;plot(t,s,'LineWidth',3)ii=find(t==4.5);s45=s(ii)s45 =1.65413 求函数x ex f 3sin )(=的数值积分⎰=π0 )(dx x f s ,并请采用符号计算尝试复算。

MATLAB数学实验 第四章 函数和方程

MATLAB数学实验 第四章 函数和方程
• 假设已知经验公式y=f(c,x)(c为参数, x为自变量), 要求根据 一批有误差的数据(xi,yi), i=0,1,…,n, 确定参数c.这样的问 题称为数据拟合。 • 最小二乘法就是求c使得均方误差最小化 Q(c)=
2 ( y f ( c , x )) i i i 0 n
• 当f关于c是线性函数,问题转化为一个线性方程组求解。 • 如果f关于c是非线性函数,问题转化为函数极值问题
3387/1943*x^2-7637646031980105/4503599627370496*x+4886217849135065/4503599627370496
• >> vpa(fun,5) ans = 1.7432*x^2-1.6959*x+1.0850
• >> xi=-0.2:0.01:0.3; • >> yi=polyval(p,xi); • >> plot(x,y,‘ro’,xi,yi)%拟合效果作图
c= lsqnonlin (Fun,c0) non-linear least squares problems.
使用迭代法搜索最优参数c. 其中Fun是以参数c(可 以是向量)为自变量的函数,表示误差向量yf(c,x)(x, y为数据),c0为参数c的近似初值(与c同 维向量),具体使请看帮助文件。
c=lsqcurvefit(Fun2,c0, x, y) 从外部输入数据, 这里Fun2为两变量c和x的函数 f(c, x)

的调用格式
x= -3 y= -2.7183
• (3) • >> fun3=inline('100*(v(2)-v(1)^2)^2+(1-v(1))^2','v') fun3 = Inline function: fun3(v) = 100*(v(2)-v(1)^2)^2+(1-v(1))^2 • >> [v,fv]=fminsearch(fun3,[1 1]) v= 1 1 fv = 0

四讲Matlab绘图ppt课件

四讲Matlab绘图ppt课件

2024/2/12
8
一、二维图形
h o m e 移动光标到命令窗口的左上角。
hold on 保持当前图形。允许在当前图 形状态下,使用同样的缩放比例加入另 一个图形。
hold off 释放图形窗口,这样下一个图 形将称为当前图形。这是缺省状态。
h o l d 在hold on和hold off之间 进行切换。
2024/2/12
9
一、二维图形
subplot(m,n,p)将
图形窗口分割成m行n列,并设置p所指定
的子窗口为当前窗口。子窗口按行由左
至右,由上至下进行编号。这一命令在 M AT L A B的当前版本中也被写作s u b p l o t ( m n p )。
s u b p l o t 设置图形窗口为缺省模 式,即单窗口模式。等价于s u b p l o t ( 1 , 1 , 1 )。
2024/2/12
24
三、三维图形
•p l o t 3 ( x 1 , y 1 , z 1 , str1,x2,y2,z2,s t r 2 ,. . .)用字符串s t r 1确定的 线型和颜色对x 1 , y 1 , z 1绘图,用字符 串s t r 2确定的线型和颜色对x2, y2, z2 绘图. . .。如果省略s t r 1 , s t r 2,. . ., M AT L A B将自动选择线型和颜色。
2024/2/12
25
三、三维图形
m e s h ( X,Y,Z ) 将矩阵Z中的各个
元素作为矩形网格上的高度,对这些值 绘图,并且将相邻的点连接形成三维网 格表面图。颜色由高度,即Z中的元素指 定。
s u r f ( X , Y , Z) 绘制出由坐标

Matlab基础及其应用 第4章 图形绘制

Matlab基础及其应用 第4章 图形绘制
%设置曲线标记为圆
'MarkerIndices',[1 31 61 91 121],... %在4个点显示标记
'MarkerEdgeColor','r',...
%设置曲线标记外框为红色
'MarkerFaceColor','y',...
%设置曲线标记内填充黄色
'MarkerSize',8)
%设置曲线标记大小为8
用法:
fplot(funx, funy, lims)
其中,funx、funy代表函数,通常采用函数句柄的形式。li
ms为参数函数funx和funy的自变量的取值范围,用二元向量
[tmin,tmax]描述。例如,例4.1也可以用以下命令实现:
>> fplot(@(t)sin(t)+sin(2*t), @(t)cos(t)-cos(2*t), [0,2*pi])
t1=linspace(0,3*pi,90);
x=cos(t1)+t1.*sin(t1);
t2=linspace(0,2*pi,50);
y=sin(t2)-t2.*cos(t2);
plot(t1,x,t2,y);
4.1 二维曲线的绘制
MATLAB基础与应用教程
4.1.1 绘制二维曲线
2.fplot函数
支持的TeX字符串中,用\bf、\it、\rm标识符分别定义字形
为加粗、倾斜和常规字体。
表4.5中的各个字符既可以单独使用,又可以和其他字符及
命令联合使用。为了将控制字符串、TeX标识符与输出字符
分隔开来,可以用大括号界定控制字符串以及受控制字符串

第四章MATLAB的可视化功能

第四章MATLAB的可视化功能

第四章MATLAB的可视化功能MATLAB是一种高级计算机语言和环境,非常适合进行科学计算和数据可视化。

它具有丰富的绘图和可视化功能,能够帮助用户更好地理解和展示数据。

MATLAB的可视化功能很强大,可以通过简单的命令和函数来创建各种类型的图表。

以下是MATLAB的一些主要可视化功能:2.散点图:散点图用于显示两个变量之间的关系,可以在二维空间中绘制离散的数据点。

MATLAB提供了多种散点图的选项,可以调整点的大小、形状和颜色。

3.条形图:条形图用于比较不同类别之间的数值大小,常用于展示离散数据。

MATLAB可以生成水平或垂直的条形图,用户可以自定义条的宽度、颜色和填充。

5.曲线图:曲线图用于显示连续数据的变化趋势,可以绘制平滑的曲线并描绘出趋势。

MATLAB可以创建简单的曲线图,还可以进行数据拟合和曲线平滑处理。

7.3D图形:MATLAB可以创建三维图形来显示数据的分布和关系,如三维线形图、散点图和曲面图。

用户可以旋转、缩放和平移图形,以查看不同角度和视角的数据。

8.动态可视化:MATLAB还支持动态可视化,可以通过对数据进行实时更新和交互来展示数据的变化。

用户可以创建动画、交互式图形和图表,并添加控件和输入。

MATLAB还提供了许多其他的可视化功能,如绘制轮廓图、热图、雷达图、网格图、直方图等。

用户可以使用MATLAB的绘图函数和工具箱,轻松地创建专业、高质量的图形和可视化效果。

除了绘图功能,MATLAB还提供了一些数据导入和处理的工具,可以轻松从文件、数据库或其他数据源中导入数据,并进行处理和清洗。

用户还可以使用MATLAB的统计函数和工具进行数据分析和可视化。

综上所述,MATLAB的可视化功能非常强大,可以帮助用户更好地理解和展示数据。

无论是进行科学研究、数据分析还是学术教学,MATLAB 的可视化功能都能提供有力的支持。

matlab第四章课后答案

matlab第四章课后答案

%Exer‎c ise ‎1(1)‎r oots‎([1 1‎1])‎%Exe‎r cise‎1(2)‎root‎s([3 ‎0 -4 ‎0 2 -‎1])‎%Exer‎c ise ‎1(3)‎p=zer‎o s(1,‎24);‎p([1 ‎17 18‎22])‎=[5 -‎6 8 -‎5];r‎o ots(‎p)%‎E xerc‎i se 1‎(4)p‎1=[2 ‎3];p‎2=con‎v(p1,‎p1);‎p3=c‎o nv(p‎1, p2‎);p3‎(end)‎=p3(e‎n d)-4‎; %原p‎3最后一个‎分量-4‎r oots‎(p3)‎%Exe‎r cise‎2fu‎n=inl‎i ne('‎x*log‎(sqrt‎(x^2-‎1)+x)‎-sqrt‎(x^2-‎1)-0.‎5*x')‎;fze‎r o(fu‎n,2)‎%Exe‎r cise‎3fu‎n=inl‎i ne('‎x^4-2‎^x');‎fplo‎t(fun‎,[-2 ‎2]);g‎r id o‎n;fz‎e ro(f‎u n,-1‎),fze‎r o(fu‎n,1),‎f minb‎n d(fu‎n,0.5‎,1.5)‎%Ex‎e rcis‎e 4f‎u n=in‎l ine(‎'x*si‎n(1/x‎)','x‎');f‎p lot(‎f un, ‎[-0.1‎0.1]‎);x=‎z eros‎(1,10‎);for‎i=1:‎10, x‎(i)=f‎z ero(‎f un,(‎i-0.5‎)*0.0‎1);en‎d;x=‎[x,-x‎]%E‎x erci‎s e 5‎f un=i‎n line‎('[9*‎x(1)^‎2+36*‎x(2)^‎2+4*x‎(3)^2‎-36;x‎(1)^2‎-2*x(‎2)^2-‎20*x(‎3);16‎*x(1)‎-x(1)‎^3-2*‎x(2)^‎2-16*‎x(3)^‎2]','‎x');‎[a,b,‎c]=fs‎o lve(‎f un,[‎0 0 0‎])%‎E xerc‎i se 6‎fun=‎@(x)[‎x(1)-‎0.7*s‎i n(x(‎1))-0‎.2*co‎s(x(2‎)),x(‎2)-0.‎7*cos‎(x(1)‎)+0.2‎*sin(‎x(2))‎]; [a‎,b,c]‎=fsol‎v e(fu‎n,[0.‎5 0.5‎])%‎E xerc‎i se 7‎clea‎r; cl‎o se; ‎t=0:‎p i/10‎0:2*p‎i;x1‎=2+sq‎r t(5)‎*cos(‎t); y‎1=3-2‎*x1+s‎q rt(5‎)*sin‎(t);‎x2=3+‎s qrt(‎2)*co‎s(t);‎y2=6‎*sin(‎t);p‎l ot(x‎1,y1,‎x2,y2‎); gr‎i d on‎; %作图‎发现4个解‎的大致位置‎,然后分别‎求解y1‎=fsol‎v e('[‎(x(1)‎-2)^2‎+(x(2‎)-3+2‎*x(1)‎)^2-5‎,2*(x‎(1)-3‎)^2+(‎x(2)/‎3)^2-‎4]',[‎1.5,2‎])y2‎=fsol‎v e('[‎(x(1)‎-2)^2‎+(x(2‎)-3+2‎*x(1)‎)^2-5‎,2*(x‎(1)-3‎)^2+(‎x(2)/‎3)^2-‎4]',[‎1.8,-‎2])y‎3=fso‎l ve('‎[(x(1‎)-2)^‎2+(x(‎2)-3+‎2*x(1‎))^2-‎5,2*(‎x(1)-‎3)^2+‎(x(2)‎/3)^2‎-4]',‎[3.5,‎-5])‎y4=fs‎o lve(‎'[(x(‎1)-2)‎^2+(x‎(2)-3‎+2*x(‎1))^2‎-5,2*‎(x(1)‎-3)^2‎+(x(2‎)/3)^‎2-4]'‎,[4,-‎4])‎%Exer‎c ise ‎8(1)‎c lear‎;fun‎=inli‎n e('x‎.^2.*‎(x.^2‎-x-2)‎');f‎p lot(‎f un,[‎-2 2]‎);gri‎d on;‎%作图观‎察x(1‎)=-2;‎x(2)‎=fmin‎b nd(f‎u n,-1‎,-0.5‎);x(‎4)=fm‎i nbnd‎(fun,‎1,2);‎fun2‎=inli‎n e('-‎x.^2.‎*(x.^‎2-x-2‎)');‎x(3)=‎f minb‎n d(fu‎n2,-0‎.5,0.‎5);x‎(5)=2‎feva‎l(fun‎,x)%‎答案: 以‎上x(2)‎(4)是局‎部极小,x‎(1)(3‎)(5)是‎局部极大,‎从最后一句‎知道x(1‎)全局最大‎, x(4‎)最小。

第4章 MATLAB绘图

第4章  MATLAB绘图

4.2 其他二维图形 4.2.1 二维统计分析图
在MATLAB中,二维统计分析图形很多,常 见的有条形图、阶梯图、杆图和填充图等, 所采用的函数分别是:
bar(x,y,选项) stairs(x,y,选项) stem(x,y,选项) fill(x1,y1,选项1,x2,y2,选项2,…)
例4-13 分别以条形图、阶梯图、杆图和填充图形式 绘制曲线y=2sin(x)。
程序如下:
x=linspace(0,2*pi,1000);
y1=0.2*exp(-0.5*x).*cos(4*pi*x);
y2=2*exp(-0.5*x).*cos(pi*x);
k=find(abs(y1-y2)<1e-2); %查找y1与y2相等点
(近似相等)的下标
x1=x(k);
%取y1与y2相等点的x坐标
例4-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)
例4-2 绘制曲线。 程序如下: t=0:0.1:2*pi; x=t.*sin(3*t); y=t.*sin(t).*sin(t); plot(x,y);
例4-7 在0≤x≤2区间内,绘制曲线y1=2e-0.5x和y2=cos(4πx), 并给图形添加图形标注。
程序如下:
x=0:pi/100:2*pi;
y1=2*exp(-0.5*x);
y2=cos(4*pi*x);
plot(x,y1,x,y2)
title('x from 0 to 2{\pi}');
数据点 黑点 小圆圈 差号 十字标号 星号 小方块

Matlab绘图方法总结

Matlab绘图方法总结

2021/10/10
2
第4章 Matlab的图形功能
二、二维平面图形与坐标系
1. 几个基本的绘图命令
a. 线性坐标曲线 plot (连续曲线)
b. stem(离散曲线)
函数命令 plot 是 MATLAB 二维曲线绘图中最简单、最重
要、使用最广泛的一个线性绘图函数。它可以生成线段、
曲线和参数方程曲线的函数图形。
➢s、s1、s2:是字符串,用来设置线型、颜色、数据点标记。
X、Y、Z 是向量时,绘制以向量 X、Y、Z 的元素为 x、y、z 坐标的三
维曲线。
X、Y、Z 是矩阵时,以 X、Y、Z 对应列元素为 x、y、z 坐标分别绘制
曲2线021。/10/10
18
第4章 Matlab的图形功能
第4章Matlab的图形功能
(1)掌握图形窗口的创建与控制,以及图形窗口的基本操 作;
(2)熟练掌握二维和三维绘图基本的命令、着色、线型控 制;
(3)初步掌握用特殊的图形来表现特殊数据的性质,如面 积图、直方图、饼图等。
(4)了解在极坐标、柱坐标和球坐标系下绘制图形。
(5)掌握坐标轴的控制和图形标注命令及其用法。
%为图形窗口添加网格
semilogy(t,y)
figure(3)
l2o0g2lo1g/1(t0,y/1)0
10
第4章 Matlab的图形功能
d.双 y 轴图形 绘制左右均有 y 轴的图形
➢ plotyy(x1,y1,x2,y2)
在窗口中同时绘制两条曲线:(x1,y1)和(x2,y2),曲线(x1,y1)用左侧的 y 轴,曲
➢p1,p2,…:函数传递参数;
➢20X21,/10Y/10:数组数据点坐标。

第四章 MATLAB程序设计

第四章 MATLAB程序设计

第二节 选择结构
2.1 if 语句
在MATLAB中,if 语句有三种格式
1、单分支if 语句
语句格式为: if 条件 语句组 end 当逻辑表达式的值为真时,执行该结 构中的执行语句,执行完之后继续向 下进行;若为假,则跳过结构中的内 容,向下执行。
实例分析
例4.4 当x是整数矩阵时,输出x的值。
程序3:
x=input('输入x='); y=cos(x+1)+sqrt(x*x+1);
u=cos(x+1);
v= sqrt(x*x+1); y=u+v end if x~=10
if x~=10
y=x*sqrt(x+sqrt(x));
end
y
y=x*sqrt(x+sqrt(x))
end
第二节 选择结构
if 条件1 语句组1 elseif 条件2 语句组2 …… elseif 条件m 语句组m else if-elseif的执行方式为:如果逻辑表达式1 的值为真,则执行语句1;如果为假,则判 语句组m+1 断逻辑表达式2,如果为真,则执行语句2, end 否则向下执行。
3、多分支if语句
实例分析
y
实例分析
例4.11 求
ye
0.5 x
sin( x

6
)
定积分。
a=0;b=3*pi;n=1000; h=(b-a)/n; x=a:h:b; f=exp(-0.5*x).*sin(x+pi/6);
for i=1:n
s(i)= (f(i)+f(i+1))*h/2; end s=sum(s)

MATLAB基础教程第4章MATLAB图形绘制

MATLAB基础教程第4章MATLAB图形绘制
(二)绘制三维曲面
2、绘制三维网眼图 MATLAB提供了mesh函数用于三维网眼图的绘制。绘制三维网眼图一般需经
过以下3个步骤: (1)用meshgrid函数生成平面网格矩阵。 (2)计算平面网格矩阵数值矩阵Z,即计算(x,y)平面上所有网格点上的z值。 (3)调用mesh函数绘制网眼图
第四章 MATLAB图形绘制
第四章 MATLAB图形绘制
4.1 绘制二维图
(一)plot函数
表4.1 s参数取值表(教材P.165也有此内容)
线型 符号 (4种) 含义
色彩 符号 (8种) 含义
符号
点型 含义 (13种) 符号
含义
实线
b
g

绿
. 黑点
+ 加号
h 六角
o 圆圈: 虚线r来自c红青
* 星号
^ 上尖
p
s
五角星 方块
-. 点划线
第四章 MATLAB图形绘制
4.1 绘制二维图
(一)plot函数
是MATLAB中最核心的二维绘图函数,它有多种调用格式
第四章 MATLAB图形绘制
4.1 绘制二维图
(一)plot函数
格式1:plot(X,’s’) X是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画连续曲线。 X是实矩阵时,则按列绘制曲线,总共绘制的曲线数即矩阵的列数。 X是复数矩阵时,则按列分别以元素的实部为横坐标,虚部为纵坐标绘制多条曲线。 s用来指定线型、色彩、数据点等。此参数缺省时,MATLAB按默认值设置处理。
纵坐标名
text(xt,yt,s)
在指定位置书写文本
gtext
用鼠标在图上标注文字
第四章 MATLAB图形绘制
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程名称:Matlab应用教材:Matlab应用与实验教程讲授人:专业技术职务:讲师学历:研究生学位:硕士讲授题目:Matlab绘图所属章节:第四章计划学时:4学时教学目的和要求:MATLAB 7语言除了有强大的矩阵处理功能之外,它的绘图功能也是相当强大的。

学习完本章之后,将学会使用MATLAB 7的图形处理功能,包括基本的绘图命令、图形的简单控制、图形窗口的编辑以及图形的高级控制等。

教学重点:•基本的绘图命令•各种图形注释方法•三维图形的绘制方法•特殊一些特殊图形的绘制•图形的高级控制技巧教学难点:•基本的绘图命令•各种图形注释方法•三维图形的绘制方法教学方法:讲授、演示使用教具:多媒体课件思考题:1. 绘制正切函数tan x在0≤x≤1上的图像,并为x轴和y轴添加标签。

增量设为0.1。

2. 显示同样的图像,把sin(x) 作为第二条曲线添加到第二个图形中。

3. 生成一个列向量表示-π≤x≤π、增量取0.2的数据点。

分别使用linspace设置100个点和50个点再绘制图线。

4. 为一个三维图像绘制网格,取-3≤x≤2和-5≤y≤5,增量0.1。

再取-5≤x≤5和-5≤y≤5,增量为0.2试试。

5. 使用plot3函数绘制曲线x = e-t cos t、y = e-t sin t和z = t的图像,不要添加坐标轴标签,但要打开网格。

参考资料:【1】Matlab Programming for Engineers.(Second Edition).Stephen J.Champan【2】精通Matlab 7王正林.刘明编著.电子工业出版社第四章Matlab绘图绘图是数学应用程序在计算机上最有用的一种应用,MATLAB当然也毫不例外。

有时我们需要将使手工难以绘制的函数或实验数据的可视化。

本章我们将介绍在MATLAB中完成这些任务的命令和技术。

一、2D绘图基础我们从绘制最基本的图形开始——只有一个变量的函数图形。

在MATLAB中绘图包含下面三个步骤:1. 定义函数2. 指定要绘制的函数图形的值范围3. 调用MATLAB的plot(x, y)函数当指定函数值的范围时,我们必须告诉MATLAB函数使用的变量增量。

使用较少的增量可以使得图形显示更加平滑。

如果增量较小,MATLAB会计算更多的函数值,不过通常不需要取得那么小。

我们用一个简单的例子来看看如何做。

我们绘制0≤x≤10之间的y = cos(x)的图形。

绘制之前,我们要定义这个区间并告诉MATLAB我们所使用的增量。

区间使用方括号[]括起来,以下面的形式定义:[ start : interval : end ]例如,如果我们要告诉MATLAB在0≤x≤10上以0.1的增量递增,我们输入:[0:0.1:10]我们用赋值运算符给这个范围内的变量一个名称,也用这种办法告知MATLAB相关变量和我们要绘制的函数。

因此,要绘制y = cos(x),输入的命令如下:>> x = [0:0.1:10];>> y = cos(x);注意我们每行都以分号“;”结尾,记住,这会抑制MATLAB输出。

你不会想让MATLAB在屏幕中间输出一大串x值,因此使用了分号。

现在我们可以输入下面的命令绘图了:>> plot(x, y)输入绘图命令后敲回车ENTER。

过一会儿,MATLAB会新开启一个标题为“Figure 1”的新窗口,窗口中含有所绘制的图形。

本例中我们得到图4-1。

现在增量呢?假设我们把增量扩大10倍,即把它设置为1,此时使用输入下面的命令即可:>> x = [0:1:10];此时如果尝试再次绘图,我们会得到错误信息:>> plot(x, y);??? Error using ==> plot Vectors must be the same lengths.我们已经定义过y = cos(x),因此MATLAB不能再次绘图。

那怎么办?我们必须告诉MATLAB重新计算我们新定义x后的y值。

换句话说,正确的行为是我们重新输入所有的命令:>> y = cos(x)y = Columns 1 through 5 1.0000 0.5403 -0.4161 -0.9900-0.6536 Columns 6 through 10 0.2837 0.9602 0.7539 -0.1455-0.9111 Column 11 -0.8391>> plot(x, y)简短插入语——注意我们在重新定义y的时候去掉了末尾的分号,所以MATLAB输出了每个x点的cos(x)值。

此时如果x点的数量巨大,你会觉得这并不需要显示出来。

好了,现在回到绘图。

当我们以较大增量绘图时,所绘制的图像就不那么精确了。

看看图4-2中MATLAB以1为增量绘制的图像,此时变得很粗劣。

让我们用另一种方法试试。

我们把增量设为原来的1/10,即设为0.01。

记住我们需要重新定义y,因此我们需要输入的命令是:>> x = [0:0.01:10];>> y = cos(x);>> plot(x, y)>> plot(x, y)这一次我们重现了非常漂亮的y = cos(x)图像,现在我们知道如何在窗口中直接地绘图了。

下一件事你可能就想要绘制一个坐标轴有标签的图像了。

这可以通过xlabel和ylabel函数做到。

这些函数可以带一个用单引号括起来的参数,该参数就是坐标轴的标签。

把xlabel和ylabel函数用逗号分开与plot命令放在同一行。

例如,下面的命令产生的图像如图3-4所示:>> x = [0:0.01:10];>> y = cos(x);>> plot(x, y), xlabel('x'), ylabel('cos(x)');二、更多2D绘图选项到目前为止,我们知道如何输出函数的一般图像。

让我们再看看在绘图时可能会考虑到的选项。

如果你要在演示或作业中使用图像,你可能会想要给图像加个标题。

MATLAB允许你使用title命令做到这一点,它使用单引号括起来的字符串做参数。

标题就会在图像的正上方打印出来。

假设现在我们需要绘制某个力的图像,这个力遵循f(t) = e-2t sin t,其中t表示时间,单位是秒,范围0≤t ≤4,每0.02秒取一个数据,另外我们还要在图像上显示“阻尼弹力”。

怎样做呢?第一步定义时间间隔,以普通的方法做就行了。

这里我们用t代替x。

>> t = [0:0.02:4];现在我们定义函数,这相当简单:>> f = exp(-2*t)*sin(t);然而,当你这样做的时候,我们得到一条错误消息。

MATLAB告诉我们:??? Error using ==> mtimesInner matrix dimensions must agree.那么我们如何绕过呢?一种方法是使用fplot函数来代替,fplot函数会绕过绘图的时间间隔,而自动为我们决定绘图的点数。

一般地,fplot为你产生尽可能精确的图像,同时它也帮助我们绕过像刚才这样的错误。

调用fplot的形式如下fplot('function string', [xstart, xend])参数function string告诉fplot你所要绘制的图像函数,而xstart和xend定义了函数的区间。

这就简单了,让我们看看如何来求解刚才这个例子。

我们用下面的命令可几步合一,然后敲回车即搞定:>> fplot('exp(-2*t)*sin(t)',[0, 4]);MATLAB很快就绘制了图像如果我们要为图像添加标签和标题,可以使用与plot(x, y)相同的后继步骤。

我们再做一次,这次添加标题“阻尼弹力”和坐标轴标签。

>> fplot('exp(-2*t)*sin(t)',[0, 4]), xlabel('t'), ylabel('f(t)'), title('阻尼弹力')刚才我们介绍了fplot命令,回头再看我们输入指数函数和三角函数相乘时所产生的错误。

我们输入>> t = [0:0.02:4];>> f = exp(-2*t)*sin(t);??? Error using ==> mtimesInner matrix dimensions must agree.在MATLAB正确的方法是在乘号(*)前带上一个圆句点句(.*),不明白?让我演示一遍正确的输入方法:>> t = [0:0.02:4];>> f = exp(-2*t).* sin(t);>> plot(t, f)这一次可就没有什么错误了,也正确地绘制了图像。

因此,当一个函数是由二个或更多个函数相乘构成,别忘记在相乘时加上“.”以便告诉MATLAB我们是对两个矩阵进行相乘。

在本例中,我们用>> f = exp(-2*t).*sin(t);代替>> f = exp(-2*t)*sin(t);,不同的地方是第二部分——我们使用了矩阵相乘(由“.*”指出)。

好了,我们回到老命令plot(x, y)。

我们还有没有什么方法可以装扮我们的二维图像呢?一种方法是给图像添加是给图像添加网格,这可以通过在绘图语句中添加grid on实现。

在下一例子中,我们绘出y = tanh(x)函数在-6≤x ≤6之间的图像并显示网格。

我们先定义间隔:>> x = [-6:0.01:6];接着我们定义函数:>> y = tanh(x);绘图命令看起来如下,而产生的图像如图3-7.>> plot(x,y), grid on三、坐标轴命令MATLAB允许你用下面的方式在二维绘图中调整坐标轴。

如果我们在绘图命令行中加进axis square,这会使得MATLAB产生正方形图像。

如果我们输入axis equal,那么MATLAB会产生一个两坐标轴比例和间距都相同的图像。

我们回到刚才y = tanh(x)的例子,我们已经把它绘在图3-7中。

如果你使用axis square绘图,你会得到与刚才使用默认设置一样的图像。

但假设我们输入:>> plot(x,y), grid on, axis equal在这种情况下,我们得到的图像如图3-8所示。

注意图3-7与图3-8中y轴的间距有很大不同。

在第一种情况中,竖直轴或者说y轴的间距与x轴的不同。

相关文档
最新文档