数学实验复习1doc.docx
- 文档编号:3413593
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:32
- 大小:93.73KB
数学实验复习1doc.docx
《数学实验复习1doc.docx》由会员分享,可在线阅读,更多相关《数学实验复习1doc.docx(32页珍藏版)》请在冰点文库上搜索。
数学实验复习1doc
⏹矩阵的加减:
对应分量进行运算Matlab绘图
⏹>>x=0:
pi/10:
2*pi;>>y=sin(x);>>plot(x,y);
⏹平面绘图命令的基本形式:
plot(x,y)
⏹x,y都是向量,则以x中元素为横坐标,y中元素为纵坐标作平面曲线。
此时x,y必须具有相同长度
⏹x,y都是矩阵,则将x的列和y中相应的列相组合,绘制多条平面曲线。
此时x,y必须具有相同的大小。
⏹x是向量,y是矩阵,若x的长度与y的行数相等,则将x与y中的各列相对应,绘制多条平面曲线;否则,若x的长度与y的列数相等,则将x与y中的各行相对应,绘制多条平面曲线。
此时x的长度必须等于y的行数或列数。
⏹y=cos(x)在[0,4]上的图像
>>x=0:
pi/10:
4*pi;>>y=cos(x);>>plot(x,y);
●plot(y):
绘制向量y的线性图
●以下标为横坐标,元素值为纵坐标,等价于x=[1:
length(y)];plot(x,y);y=[0,0.4,0.8,1.0,0.9,6.1];>>plot(y);
❑点和线的基本属性
❑plot(x,y,string)
其中string是用单引号括起来的字符串,用来指定图形的属性(点、线的形状和颜色)
>>x=[0:
0.2:
2*pi];>>plot(x,cos(x));>>plot(x,cos(x),’r+:
’);
>>plot(x,cos(x),’bd-.’);>>plot(x,cos(x),’k*-’);
⏹点和线的基本属性
-实线
:
虚线
-.点划线
--间断线
空白
.点
o小圆圈
x叉子符
+加号
*星号
s方格
d菱形
^朝上三角
v朝下三角
>朝右三角
<朝左三角
p五角星
h六角星
y黄色
m棕色
c青色
r红色
g绿色
b蓝色
w白色
k黑色
添加标题title('text')
x=0:
pi/10:
4*pi;
>>y=cos(x);>>plot(x,y);
>>title(’y=cos(x)的图像’);可以指定文本的属性
title('text','Property1',value1,'Property2',value2,...)
Property:
linewidth,markersize,fontsize,
fontweight,fontname,…
添加坐标轴标注
xlabel('text')ylabel('text')
x=0:
pi/10:
4*pi;>>y=cos(x);plot(x,y);>>title('y=cos(x)的图像');
>>xlabel('x轴');>>ylabel('y轴');
❑在同一个绘图窗口绘制多个图像plot(x1,y1,s1,x2,y2,s2,...,xn,yn,sn)
⏹等价于:
holdonplot(x1,y1,s1)plot(x2,y2,s2)...plot(xn,yn,sn)
❑添加图例legend(string1,string2,...)x=0:
pi/10:
4*pi;>>y1=cos(x);
>>y2=sin(x);>>plot(x,y1,x,y2);>>legend('cos(x)','sin(x)');
❑在任何指定的地方添加文本text(x,y,string)
x=0:
pi/10:
4*pi;>>y=cos(x);>>plot(x,y);>>text(pi/2,cos(pi/2),...
'\leftarrowy=cos(x)');xlable,ylabel,text也可以指定文本的属性
❑划分绘图窗口subplot(m,n,p)
将一个绘图窗口分割成mn个子区域,并按行从左至右依次编号,p表示第p个绘图子区域。
x=-pi:
pi/10:
pi;>>subplot(2,2,1);plot(x,sin(x));>>subplot(2,2,2);plot(x,cos(x));
>>subplot(2,2,3);plot(x,x.^2);>>subplot(2,2,4);plot(x,exp(x));
❑线条的粗细,字体大小,坐标轴属性等
x=-pi:
pi/10:
pi;>>y=sin(x);>>plot(x,y,'rh:
','linewidth',2,...
'markeredgecolor','b',...'markerfacecolor','g')
linewidth:
指定线条的粗细markeredgecolor:
指定标记的边缘色
markerfacecolor:
指定标记表面的颜色
注:
1)属性与属性的值是成对出现的2)更多属性参见plot的联机帮助
●显示网格gridon/gridoff
●保留当前绘图窗口中的图像holdon/holdoff
●新建绘图窗口/选取绘图窗口figure(n)
●关闭绘图窗口close/closeall
❑三维曲线绘图命令:
plot3plot3(x,y,z)
三维螺旋线t=0:
pi/10:
10*pi;
>>x=sin(t);>>y=cos(t);>>z=2*t;>>plot3(x,y,z);
plot3的用法与plot类似
⏹三维曲面
mesh(X,Y,Z)绘制由矩阵X,Y,Z所确定的曲面网格图
[X,Y]=meshgrid(-3:
1/8:
3);>>Z=peaks(X,Y);>>mesh(X,Y,Z);
❑网格生成函数[X,Y]=meshgrid(x,y)
若x=y,则可简写为:
[X,Y]=meshgrid(x)
⏹墨西哥帽子:
由函数z=sin(r)/r确定的曲面,其中
(–a [X,Y]=meshgrid([-8: 0.5: 8]);x=-8: 0.5: 8; >>y=-8: 0.5: 8;>>[X,Y]=meshgrid(x,y);>>r=sqrt(X.^2+Y.^2)+eps;>>Z=sin(r)./r; >>mesh(X,Y,Z) 1)x与y可以取不同的步长2)注意这里采用的数组运算 ❑绘制带等高线的空间曲面meshc调用方式与mesh相同,在mesh基础上增加等高线 ❑绘制屏蔽边界面的空间曲面meshz调用方式与mesh相同,在mesh基础上屏蔽边界面 带等高线的曲面meshc [X,Y]=meshgrid(-8: 0.5: 8); >>r=sqrt(X.^2+Y.^2)+eps;>>Z=sin(r)./r;>>meshc(X,Y,Z) 带屏蔽面的曲面meshz [X,Y]=meshgrid(-8: 0.5: 8); >>r=sqrt(X.^2+Y.^2)+eps;>>Z=sin(r)./r;>>meshz(X,Y,Z) ◆显式方程: x=a: hx: b;y=c: hy: d; >>[X,Y]=meshgrid(x,y);>>Z=z(X,Y);>>mesh(X,Y,Z) ⏹参数方程: u=a: hu: b;v=c: hv: d;>>[U,V]=meshgrid(u,v);>>X=x(U,V);Y=y(U,V);Z=z(U,V); >>mesh(X,Y,Z) ❑空间曲面其它作图命令surf(X,Y,Z)绘制由矩阵X,Y,Z所确定的曲面图,参数含义同mesh mesh绘制网格图,surf绘制表面着色的曲面图 ◆sphere(n)专用于绘制单位球面[X,Y,Z]=sphere(n)sphere只能画单位球面! ⏹surf作图举例 [X,Y]=meshgrid(-8: 0.5: 8);>>r=sqrt(X.^2+Y.^2)+eps;>>Z=sin(r)./r;>>surf(X,Y,Z) ⏹坐标轴控制坐标轴控制命令: axisaxis([xmin,xmax,ymin,ymax,zmin,zmax]) 作用: 指定坐标轴的显示范围 axisauto自动模式,使得图形的坐标满足图中的一切元素 axisequal各坐标轴采用等长刻度axissquare使绘图区域为正方形 axison/off恢复/取消对坐标轴的一切设置axismanual以当前的坐标限制图形的绘制(多图时) ……更多参见axis的联机帮助 ⏹图像的着色方案colormap: 设置绘图的着色方案colormap([rgb])或colormap(s) ◆r,g,b都是0~1之间的一个数 ◆s为字符串,表示所采用的色系,常用的值有 颜色映象 相应的颜色系 颜色映象 相应的颜色系 autumn 红黄色系 hsv 色调饱和色系 gray 线性灰色系 hot 黑红黄白色系 cool 青和洋红色系 pink 柔和色系 ⏹二维曲线绘图命名: ezplotezplot(f(x),[a,b]) ⏹绘制y=f(x)在区域a ⏹ezplot(f(x,y),[a,b,c,d]) 绘制f(x,y)=0在区域a 绘制x=x(t),y=y(t)在区域a ❑二维曲线绘图命名: ezplotezplot(f(x)) 绘制y=f(x)在区域-2 绘制f(x,y)=0在区域-2 绘制x=x(t),y=y(t)在区域0 ⏹>>ezplot('sin(x)'); ⏹ezplot('sin(x)',... [-pi,pi]); ⏹空间曲线绘图: ezplot3 ezplot3(x(t),y(t),z(t),[a,b])绘制空间曲线: x=x(t),y=y(t),z=z(t),a ezplot3(x(t),y(t),z(t)) 绘制空间曲线: x=x(t),y=y(t),z=z(t),0 符号作图时要注意使用单引号! 空间曲面绘图: ezmesh、ezsurfezmesh(z(x,y),[a,b,c,d]) ezsurf的用法与ezmesh相同 ◆ezmesh(z(x,y),[a,b]) ◆ezmesh(z(x,y),[a,b]) ⏹Matlab作图基本二维曲线作图过程 ⏹点线: 先画点,后连线 y=sin(x),0 一、画点x=0: pi/5: 2*pi;>>y=sin(x);>>plot(x,y,'.') 三、加密: 取更多的点x=[0: pi/20: 2*pi];>>y=sin(x);>>plot(x,y,'.') ⏹三维曲线作图过程 ⏹绘制三维螺线: (0 t=[0: 0.5: 20];>>x=t;>>y=sin(t);>>z=cos(t);>>plot3(x,y,z,’.’) t=[0: 0.5: 20];>>x=t;>>y=sin(t);>>z=cos(t);>>plot3(x,y,z,’.-’) t=[0: 0.1: 20];>>x=t;>>y=sin(t);>>z=cos(t);>>plot3(x,y,z,’.-’) t=[0: 0.1: 20];>>x=t;>>y=sin(t);>>z=cos(t);>>plot3(x,y,z) ⏹三维曲面作图填充图 ⏹例: 用函数patch绘制填充图利用二维绘图函数patch和fill,我们可绘制填充图。 例: 用函数patch绘制填充图 fplot('humps',[0,2],'b')holdonpatch([0.50.5: 0.02: 11],[0humps(0.5: 0.02: 1)0],'r'); holdofftitle('Aregionunderaninterestingfunction.')grid 利用二维绘图函数patch和fill,我们可绘制填充图。 例: 用函数fill绘制填充图 x=0: pi/60: 2*pi;y=sin(x);x1=0: pi/60: 1;y1=sin(x1);plot(x,y,'r');holdonfill([x11],[y10],'g') 填充图 closet=(1: 2: 15)*pi/8; x=sin(t);y=cos(t);fill(x,y,'r');axissquareaxisoff text(0,0,'STOP','color',[111],'fontsize',50,'horizontalalignment','center') ⏹条形图(BarGraphs)特别适用于少量且离散的资料。 欲画出垂直长条图,可用bar指令。 例1: bar01.mx=[13452];bar(x); ⏹bar指令也可接受矩阵输入,它会将同一横列的数据聚集在一起。 ⏹例2: bar02.mx=[23457;12321];bar(x); ⏹bar及barh指令还有一项特异功能,就是可以将同一横列的数据以堆栈(Stack)方式来显示。 ⏹例3: bar03.mx=[23457;12321];bar(x,'stack') ⏹除了平面条形图之外,MATLAB亦可使用bar3指令来画出立体长条图。 ⏹例4: bar04.mx=[23457;12321];bar3(x) ⏹bar3指令还可以使用群组(Group)方式来呈现条形图 ⏹例5: bar05.mx=[23457;12321];bar3(x,'group') ⏹条形图的指令和类别: 垂直条形图 水平条形图 平面 bar barh 立体 bar3 bar3h ⏹若要指定条形图的x坐标,可使用两个输入向量给bar指令。 假设张掖的月平均温度如下: ⏹例6: bar06.m x=1: 6;%月份y=35*rand(1,6);%温度值(假设是介于0~35的随机数) bar(x,y);xlabel('月份');%x轴的说明文字 ylabel('平均温度(^{o}c)');%y轴的说明文字 %下列指令将x轴的数字改成月数set(gca,'xticklabel',{'一月','二月','三月','四月','五月','六月'}); ⏹面积图(AreaGraphs)和以堆栈方式呈现的长条图很类似,特别适用于具有迭加关系的数据。 举例来说,若要显示清华大学在过去10年来的人数(含大学部,研究生,及教职员)变化情况,可用面积图显示。 ⏹例7: area01.m y=rand(10,3)*100;x=1: 10;area(x,y);xlabel('Year');ylabel('Count') ⏹使用pie指令,可画出平面扇形图(PieCharts),并可加上说明。 ⏹例8: pie01.mx=[2354];label={'东','南','西','北'};pie(x,label); ⏹pie指令直接将x元素视为面积百分比,因此可画出不完全的扇形图。 ⏹例9: pie02.mx=[0.21,0.14,0.38];pie(x); ⏹pie指令还有一特异功能,可将某个或数个扇形图向外拖出,以强调部份资料。 ⏹例10: pie03.mx=[2354];explode=[1100];pie(x,explode); ⏹欲画出立体扇形图,可用pie3指令。 例11: pie301.m x=[2354];explode=[1100];label={‘春耕’,‘夏耘’,‘秋收’,‘冬藏'}; pie3(x,explode,label); ⏹顾名思义,针头图(StemPlots)就是以一个大头针来表示某一点数据,其指令为stem。 ⏹例12: stem01.m t=0: 0.2: 4*pi;y=cos(t).*exp(-t/5);stem(t,y) ⏹针头图特别适用于表示「数字讯号处理」(DSP,DigitalSignalProcessing)中的数字讯号。 若要画出实心的针头图,可加“fill”选项。 ⏹例13: stem02.m t=0: 0.2: 4*pi;y=cos(t).*exp(-t/5);stem(t,y,'fill'); ⏹欲画出立体的针头图, 可用stem3指令。 ⏹例14: stem301.m theta=-pi: 0.05: pi; x=cos(theta);y=sin(theta);z=abs(cos(3*theta)).*exp(-abs(theta/3));stem3(x,y,z); ⏹使用stairs指令,可画出阶梯图(StairstepPlots),其精神和针头图很相近,只是将目前资料点的高度向右水平画至下一点为止。 (在数字讯号处理,此种作法称为Zero-orderHold。 ) ⏹例15: stairs01.m t=0: 0.4: 4*pi;y=cos(t).*exp(-t/5);stairs(t,y); ⏹若再加上针头图,则可见两者相似之处。 ⏹例16: stairs02.m t=0: 0.4: 4*pi;y=cos(t).*exp(-t/5);stairs(t,y); holdon%保留旧图形stem(t,y);%迭上针头图 holdoff ⏹MATLAB指令fill将数据点视为多边形顶点,并将此多边形涂上颜色,呈现出实心图(FilledPlots)的结果。 ⏹例17: fill01.m t=0: 0.4: 4*pi;y=sin(t).*exp(-t/5); fill(t,y,'b');%'b'为蓝色 ⏹若与stem合用,则可创造出一些不同的视觉效果。 ⏹例18: fill02.m t=0: 0.4: 4*pi;y=sin(t).*exp(-t/5); fill(t,y,'y');%'y'为黄色holdon%保留旧图形 stem(t,y,'b');%迭上蓝色针头图holdoff ⏹fill3可用于三维的实心图。 ⏹例19: fill301.m X=[0011];Y=[0110];Z=[0110];C=[00.30.60.9]';fill3(X,Y,Z,C); ⏹使用fill3指令,我们亦可以画出各种酷酷的图形。 ⏹范例20: fill302.m t=(1/16: 1/8: 1)'*2*pi;x=sin(t);y=cos(t);c=linspace(0,1,length(t)); fill3(x,y/sqrt (2),y/sqrt (2),c,x/sqrt (2),y,x/sqrt (2),c); axistight ⏹使用quiver指令可画出平面上的向量场图(QuiverPlots),特别适用于表示分布于平面的向量场(VectorFields), 例如平面上的电场分布,或是流速分布。 ⏹范例21: quiver01.m [x,y,z]=peaks(20);[u,v]=gradient(z);contour(x,y,z,10); holdon,quiver(x,y,u,v);holdoffaxisimage ⏹欲画出空间中的向量场图,可用quiver3指令。 ⏹范例22: quiver301.m [x,y]=meshgrid(-2: 0.2: 2,-1: 0.1: 1);z=x.*exp(-x.^2-y.^2); [u,v,w]=surfnorm(x,y,z);quiver3(x,y,z,u,v,w); holdon,surf(x,y,z);holdoffaxisequal ⏹我们可用contour指令来画出「等高线图」(ContourPlots)。 ⏹范例23: contour01.m z=peaks;contour(z,30);%画出30条等高线 ⏹若要画出特定高度的等高线,可执行如下: ⏹范例24: contour02.m z=peaks;contour(z,[025]); ⏹欲标明等高线的高度,可用clabel指令。 ⏹范例25: contour03.m z=peaks;[c,handle]=contour(z,10);clabel(c,handle); ⏹若欲在等高线之间填入颜色,可用contourf指令。 ⏹范例26: contour04.m z=peaks;contourf(z); ⏹若要使画出的等高线对应至正确的x及y坐标,则可执行如下: ⏹范例27: contour05.m [x,y,z]=peaks;contour(x,y,z);%使用三个输入 ⏹等高线图 ⏹contourf亦可接受x、y、z输入自变量。 若要将等高线画在曲面的正下方,可用surfc或meshc指令。 ⏹范例28: contour06.m [x,y,z]=peaks;meshc(x,y,z);axistight ⏹若要画出三度空间中的等高线,可用c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 实验 复习 doc