选修课MATLAB作业.docx
《选修课MATLAB作业.docx》由会员分享,可在线阅读,更多相关《选修课MATLAB作业.docx(9页珍藏版)》请在冰豆网上搜索。
选修课MATLAB作业
Matlab程序设计
作业
学院:
信息科学与技术学院
专业:
通信工程
姓名:
刘潇
学号:
201313070404
班级:
通信4班
教师:
徐静
日期:
2014年11月9日
文件1
%学号:
201313070404
%姓名:
刘潇
clearall%清除工作空间的所有变量
clf%清除图形窗口的内容
mfilename('fullpath')%返回当前正在运行的函数所在文件的文件名
echoon
%本m文件运行后会输出6个图形
subplot(2,3,1)%subplot(m,n,p)是将多个图画到一个平面上的工具。
其中,m表示是图排成m行,n表示图排成n列,p表示图所在的位置。
t=0:
0.1:
10;
z=impulse(1,[111],t);
stairs(t(1:
5:
end),z(1:
5:
end))%stairs函数用于绘制阶梯状图,在图中为蓝色的那根线
holdon%holdon表示保留原来的图
plot(t,z,'r')%绘图函数,在图中为红色的那根连续的线
plot([0t(end)],[00],'k:
')%绘图函数,在图中为水平虚线,左边对准了0刻度线
title('ImpulseResponse-(STAIRS)')%在图形上方添上标题
subplot(2,3,2)%此函数表示接下来的图形绘制在第二个位置
theta=2*pi*(0:
74)/75;
x=cos(theta);
y=sin(theta);
z=abs(fft(ones(10,1),75))';
stem3(x,y,z)%stem3函数绘制离散序列数据的三维杆图
title('PolarFFT-(STEM3)')%在图形上方添上标题
subplot(2,3,3)%此函数表示接下来的图形绘制在第三个位置
[X,Y,Z]=peaks(-2:
0.25:
2);
[U,V]=gradient(Z,0.25);
contour(X,Y,Z,10);%该函数用于绘制矩阵的等高线
holdon%holdon表示保留原来的图
quiver(X,Y,U,V);%使用箭头绘制矢量图
title('SurfaceGradient-(CONTOUR&QUIVER)')%在图形上方添上标题
theta=0:
0.1:
4*pi;
[x,y]=pol2cart(theta(1:
5:
end),theta(1:
5:
end));
subplot(2,3,4)%此函数表示接下来的图形绘制在第四个位置
polar(theta,theta)
axis([-1313-12.514.5])
title('SpiralPlot-(POLAR)')%在图形上方添上标题
subplot(2,3,5)%此函数表示接下来的图形绘制在第五个位置
compass(x,y)%在一个圆形带网格的区域内,使用带箭头的线条绘制从原点出发的若干向量。
绘制出来的效果图就像一个罗盘
axis([-1313-12.514.5])
title('DirectionVectors-(COMPASS)')%在图形上方添上标题
subplot(2,3,6)%此函数表示接下来的图形绘制在第六个位置
feather(x(1:
19),y(1:
19))%feather复平面图形,把复数矩阵中的元素的相角和幅值显示成沿横轴等间隔辐射的箭头
axis([121-510])
title('DirectionVectors-(FEATHER)')%在图形上方添上标题
set(gcf,'Position',[64111887564])
echooff
shg
文件1运行后输出的图形为
文件2
%学号:
201313070404
%姓名:
刘潇
clearall%清除工作空间的所有变量
clf%清除图形窗口的内容
echoon
%本m文件运行后会输出6个图形
data=[10235;58103;9761;3572;4753];
subplot(2,3,1)%subplot(m,n,p)是将多个图画到一个平面上的工具。
其中,m表示是图排成m行,n表示图排成n列,p表示图所在的位置。
bar(data,'stacked');%绘制直方图
title('BarGraph-(BAR,''stacked'')');%在图形上方添上标题
subplot(2,3,2)%此函数表示接下来的图形绘制在第二个位置
bar3h(data);%绘制三维水平直方图
title('HorizontalBarGraph-(BAR3H,''grouped'')');%在图形上方添上标题
subplot(2,3,3)%此函数表示接下来的图形绘制在第三个位置
hist(randn(1000,3));%绘制直方图函数
title('Histogram-(HIST)');%在图形上方添上标题
subplot(2,3,4)%此函数表示接下来的图形绘制在第四个位置
area(data);%area是填充画图区域的命令
title('AreaPlot-(AREA)');%在图形上方添上标题
subplot(2,3,5)%此函数表示接下来的图形绘制在第五个位置
pie3(sum(data),[0010]);%画3维饼图的函数
title(['3-DPieChart';'(PIE3)']);%在图形上方添上标题
subplot(2,3,6)%此函数表示接下来的图形绘制在第六个位置
rose(5/3*randn(1000,1),18);%使用rose函数可以绘制玫瑰图
title('PolarHistogram-(ROSE)');%在图形上方添上标题
set(gcf,'Position',[184248740424])%设置对象的属性
echooff
shg
文件2运行后输出的图形为
文件3
%学号:
201313070404
%姓名:
刘潇
echoon
%本m文件运行后会输出6个图形
subplot(2,3,1)%subplot(m,n,p)是将多个图画到一个平面上的工具。
其中,m表示是图排成m行,n表示图排成n列,p表示图所在的位置。
x=-3:
0.3:
3;y=x;
[X,Y]=meshgrid(x,y);%meshgrid()生成绘制3-D图形所需的网格数据
[theat,R]=cart2pol(X,Y);%在MATLAB中,该函数用于把笛卡尔坐标转换为极坐标(柱坐标)
Z=sinc(R);
contourf(peaks(30),10)%contourf()填充二维等高线图。
即先画出不同等高线,然后相邻的等高线之间用同一颜色进行填充。
填充用的颜色决定于当前的色图颜色
colorbar
gridon%打开网格线
title('PeaksFunction-(CONTOURF&COLORBAR)')%在图形上方添上标题
subplot(2,3,2)%此函数表示接下来的图形绘制在第二个位置
plot3(X,Y,Z)%plot3(x,y,z)用来绘制3维曲线图
gridon%打开网格线
axis([-33-33-11])
title('SincFunction-(PLOT3)')%在图形上方添上标题
subplot(2,3,3)%此函数表示接下来的图形绘制在第三个位置
waterfall(membrane
(1));%waterfall函数,绘制三维表面网格图,只是它的网格线在x轴方向出现,具有瀑布效果
title('L-shapedMembrane-(WATERFALL)')%在图形上方添上标题
subplot(2,3,4)%此函数表示接下来的图形绘制在第四个位置
contour3(peaks(30),25);%三维空间等高线图,该命令生成一个定义在矩形格栅上曲面的三维等高线图
title('PeaksFunction-(CONTOUR3)')%在图形上方添上标题
subplot(2,3,5)%此函数表示接下来的图形绘制在第五个位置
mesh(X,Y,Z)%生成由X,Y和Z指定的网线面
axis([-33-33-11])
title('SincFunction-(MESH)')%在图形上方添上标题
subplot(2,3,6)%此函数表示接下来的图形绘制在第六个位置
surf(membrane
(1))%画三维曲面图
title('L-shapedMembrane-(SURF)')%在图形上方添上标题
set(gcf,'Position',[211248713413])%设置对象的属性
echooff
shg
文件3运行后输出的图形为
部分函数的具体用法
subplot函数
使用方法:
subplot(m,n,p)或者subplot(mnp)。
subplot是将多个图画到一个平面上的工具。
其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果m=2就是表示2行图。
p表示图所在的位置,p=1表示从左到右从上到下的第一个位置。
plot函数
plot(x):
x为长度为n的数值向量,坐标的纵坐标是向量x,横坐标为matlab系统根据x向量的元素序号自动生成的从1开始的向量。
plot(x,y):
纵坐标是y,横坐标是x。
x,y向量的数目必须相等。
plot(x):
x为m*n的矩阵,plot(x)命令为矩阵的每一列画出一条线,共n条,曲线的横坐标为向量1:
m,m是矩阵的行数。
plot(z):
可以复制复向量曲线它与(plot(real(z),imag(z))等效,以实部为横坐标,虚部为纵坐标。
plot(x1,y1,x2,y2...):
绘制多条曲线。
stem3函数
函数绘制离散序列数据的三维杆图,常用格式为:
stem3(z) ,stem3(x,y,z)。
axis函数
axis(v):
v是一维向量,形式可以是[xminxmaxyminymax],定义二维图形x轴和y轴坐标轴的范围,其中v向量中的元素必须满足:
xminpolar函数
polar()进行极坐标系的绘图
polar(theta,rho):
以弧度为theta和半径为rho在极坐标中进行绘图,其中两个输入参数满足极坐标下rho=f(theta),其作用相当于直坐标中的plot(x,y)。
hist函数
hist()绘制直方图
hist(y,n)将y的取值范围分成等差的n段,然后将所有元素分别分类到该n段中,根据每段元素个数绘制直方图的高度,n可以省略,默认值为10。
Hist(y,x)将y的取值分成等差的length(x)份,将y中的元素放到各个分段中,然后以x中元素指定的位置为中心的直方图。
Area(x,y)函数
area(x,y):
若x和y是向量,则以x中的元素为横坐标,y中的元素为纵坐标,并且填充线条和x轴之间的空间,如果y是矩阵,则绘制y中每一列的和。
bar(x,y)或barh(x,y)函数
在指定的横坐标x上画出y,参数x为单调增加的。
如果y为矩阵,则将每个行向量画出。
contour()绘制等高线图