matlab2011实验3参考答案

2018-11-30 19:54

报告名称:MATLAB试验三 计算可视化

姓名: 学号: 专业: 班级:

MATLAB实验三 MATLAB计算可视化

试验报告说明:

1 做试验前请先预习,并独立完成试验和试验报告。

2 报告解答方式:将MATLAB执行命令和最后运行结果从命令窗口拷贝到每题的题目下面,请将报告解答部分的底纹设置为灰色,以便于批阅。 3 在页眉上写清报告名称,学生姓名,学号,专业以及班级。 3 报告以Word文档书写。

文档命名方式: 学号+姓名+_(下划线)+试验几.doc 如:110400220张三_试验1.doc 4 试验报告doc文档以附件形式发送到maya_email@tom.com。凡文档命名不符合规范,或者发送方式不正确,不予登记。

一 目的和要求

(1)熟练掌握MATLAB二维曲线的绘制 (2)熟练掌握图形的修饰 (3)掌握三维图形的绘制

(4)熟练掌握各种特殊图形的绘制 (5)掌握句柄图形的概念

二 内容和步骤

(说明:绘图题需在报告中粘贴图形结果。)

1 绘制二维曲线(必做)

查阅stem绘图指令,利用stem绘制复指数序列x(n)?e(?0.1?j0..3)n(其中

?10?n?10)的相关图形,要求:(1)把窗口分成2行2列。(2)左上窗口绘

制复指数序列的实部波形,窗口右上角绘制复指数序列的虚部波形,左下角绘制复指数序列的幅度波形,右下角绘制窗口的相位波形。要求每个子图标注标题,X,Y轴说明。要求显示网格。

% 复指数序列程序

n=-10:10;

alpha=-0.1+0.3*j; x=exp(alpha*n);

real_x=real(x); % 实部 img_x=imag(x); % 虚部 mag_x=abs(x); % 幅值

phase_x=(180/pi)*angle(x); % 相角,转为角度

报告名称:MATLAB试验三 计算可视化

姓名: 学号: 专业: 班级: subplot(2,2,1)

stem(n,real_x);title('实数部分');xlabel('n');ylabel('real'); grid on

subplot(2,2,2)

stem(n,img_x);title('虚数部分');xlabel('n');ylabel('imag'); grid on

subplot(2,2,3)

stem(n,mag_x);title('幅度');xlabel('n');ylabel('abs'); grid on

subplot(2,2,4)

stem(n,phase_x);title('相位');xlabel('n');ylabel('phase'); grid on

同学解题过程存在的问题:

1注意括号应用,有同学如此定义指数序列:x=exp(-0.1+j*0.3)*n,思考错在哪里?

2绘图程序最好放在M脚本中编辑,部分同学是在命令窗口中,这样不便于对程序的调试和修正。

3 部分同学的作业显示绘图的思路零乱,没能理清作图的过程。在发布的PPT 上就二维三维图形的一般作图过程有专门的总结,希望大家好好看看,注意绘图顺序过程,一般先调用subplot命令之后再调用title,xlabel等命令对子图进行设置。

2 绘制多条曲线(必做)

在同一图形窗口绘制。利用plot绘图指令绘图命令。

?(1) 在窗口上部绘制正弦信号x(t)?sin(0.5?t?),t?[0,4?]。要求曲线为黑

4报告名称:MATLAB试验三 计算可视化

姓名: 学号: 专业: 班级:

色实线。

(2) 使用hold on命令在同一窗口重叠绘制信号g(t)?x(t)?0.5t,t?[0,4?]。

要求曲线线型为红色点划线。

(3) X轴标注“时间t”, y轴标注“x(t)/g(t)”,标题为“正弦/指数序列”。 (4) 使用legend命令在图的右上角标注两条曲线的图例。 (5) 使用gtext交互式图形命令,分别标注曲线x(t)和y(t)。

% 绘制多条曲线

t=0:0.1:4*pi;

x=sin(0.5*pi.*t+pi/4); plot(t,x,'k-'); title('正弦信号'); xlabel('时间t'); ylabel('x(t)'); hold on

g=x.*(0.5.^t);

% 注意 :有同学用g=pow2(x,-t) , pow2(F,E )函数要求输入参数F是实数,E是整数,计算时自动将其转为整数。故本题不宜采用。

plot(t,g,'r-.') title('指数序列'); xlabel('序列t'); ylabel('g(n)');

%添加图例

legend('sin(0.5*\\pi*t+\\pi.4)','x(t)*0.5^t',1)

% gtext标注曲线

gtext('sin(0.5*\\pi*t+\\pi.4)'); gtext('x(t)*0.5^t');

报告名称:MATLAB试验三 计算可视化

姓名: 学号: 专业: 班级:

3 句柄的学习

(1)获取图形句柄:(必做)

1)显示并获取上图(题2)的标题句柄。

% 方法一:通过title的上级gca找到title的句柄

h_axis=gca; %获取坐标轴句柄

h_title=get(gca,'title') %获取标题属性,找到title句柄 % 方法二:在生成标题对象时直接返回句柄 p=title('指数序列')

% 方法三:用findobj,通过属性值找标题句柄

h_title=findobj(h_fig,'string','正弦/指数序列')

(2)设置图形对象属性:(必做)

1)利用set 命令设置图形标题的颜色为红色,字体大小14。 set(h_title,'color','blue','fontsize',14)

2)使用图形窗口功能。选择菜单“Edit”---“Figure Properties”打开图形属性窗口(或直接在命令窗口输入命令:propedit(gcf)直接打开图形属性窗口)。在图形属性窗口中,修改x(t)曲线的颜色和线条宽度。(必做)

(本题解答略)

3)使用set命令实现3-2)题的设置。(选做)

% 通过findobj找对象句柄

h=findobj('linestyle','-.') %返回线型是 -. 的对象的句柄 set(h,'color','m','linewidth',5)

报告名称:MATLAB试验三 计算可视化

姓名: 学号: 专业: 班级:

%生成图形对象时返回句柄

h_line2=plot(t,g,'r-.')

set(h_line2,'color','green','linewidth',2)

4) 分别采用set命令和图形属性窗口重新设置Y轴的刻度令其为[-1 -0.5 0 0.5 1](选做)

set(gca,'ytick',[-1 -0.5 0 0.5 1])

通过本题希望大家理解图形对象和句柄的概念。句柄是图形对象的标识,通过这个标识,我们可以找到这个对象,并通过set函数对对象的属性进行任意的修改。当然我们已可以在图形对象的属性窗口中直接修改

4 绘制三维曲线(必做)

1. 绘制曲线z?4xe?(x2?y2)的网线图。 D:?3?x?3,?3?y?3,要求:

(1)设置标题和x,y,z轴说明。(必做) (2)选择色图,并显示色图。(必做)

(3)分别对图形区域D:?2?x?0,?2?y?0进行镂空和裁剪 (选作) (4)改变视点,分别察看图形:1)az=-37.5,el=30 2)az=0,el=90 (必做)

(1)

[xx,yy]=meshgrid([-3:0.1:3]); zz=4.*xx.*exp(-xx.^2-yy.^2); mesh(xx,yy,zz);

title('z=4xye^{-(x^{2}+y^{2})}曲面'); xlabel('X'); ylabel('Y'); zlabel('Z');

(2)

colormap hot % 指定hot色图 colorbar % 显示色图

(3)

%%镂空

ind=find((xx<0)&(xx>-2)&(yy<0)&(yy>-2)); % 找镂空区间数组下标 zz(ind)=nan; %设置为nan,实现镂空 mesh(xx,yy,zz);

%%裁减

ind=find((xx<0)&(xx>-2)&(yy<0)&(yy>-2)); zz(ind)=0; %设置为0,实现裁减

报告名称:MATLAB试验三 计算可视化

姓名: 学号: 专业: 班级:

mesh(xx,yy,zz);

(4)

view(0,90) %改变视点

本题存在的问题:

1 理清三维作图的一般顺序。尤其是理解meshgrid函数产生二维平面栅格点阵的作用。 2 注意几个函数的区别:Colormap命令用于指定色图,colorbar命令用于显示色图。 3 有同学使用peaks函数,注意该函数用于产生特定函数曲面的数据,供测试。


matlab2011实验3参考答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:酒店管理手册

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: