第4讲MATLAB绘图
- 格式:ppt
- 大小:404.00 KB
- 文档页数:71


盐城师范学院数学与统计学院
实验报告
课程名称数据分析与处理实践
班级 数15(5)信计 学号 15213532 姓名 黄柳
实验地点 主B408 实验日期 2018.3.8 实验学时 2
实验名称 实验二 Matlab绘图基础
实验类型 基础性 综合性 设计性
实验目的:
熟悉Matlab绘制图形的常用函数,能够根据数据画出对应的图形。
实验环境:(包括软件平台和硬件平台)
计算机; Matlab软件
实验内容及步骤 (含源程序):
1.在同一个图形中画出sin2x, 和的图像,要求三条线的颜色不同,x轴范围 [0,30]并且在图上用gtext函数为三条线加上标签。
>> x=linspace(0,30);
>> y1=sin(2*x);
>> plot(x,y1,'k')
>> hold on
>> y2=50*exp(-x./20).*sin(x);
>> plot(x,y2, 'r')
>> hold on
>> y3=1/2*exp(-x./2).*cos(x);
>> plot(x,y3,'b')
>> gtext('y1')
gtext('y2')
gtext('y3')
2.绘制一个饼形图,数据如下表所示。
毕业生去向 比例(%)
国家单位 30
私营企业 30
出国 15
读研 15
待业 10
并将“国家单位”和“读研”两部分突出显示。
>> x=[3,3,2.5,2.5,1.5];
>> y=[1,0,0,1,0];
>> pie3(x,y,{'国家单位 30%','私营企业 30%','出国 15%','读研 15%','待业 10%'});
3.随机生成100个二维坐标系中的点,要求x和y均在(-5,5)的范围中,并且在图中表示出来这些点。
>> xmin=-5;
>> xmax=5;
>> ymin=-5;
>> ymax=5;
第四章
2.求方程xln(+x)--0.5x=0的正根;
fun=inline('x*log(sqrt(x^2-1)+x)-sqrt(x^2-1)-0.5*x');
fzero(fun,2)
答:所求正根为2.1155。
8.作出下列函数图形,观察所有局部极大,局部极小和全局最大,全局最小值点的粗略位置,并用MATLB函数fminbnd和fminsearch求各极值点的确切位置。
(1)f(x)=x2sin(x2-x-2); [-2,2]
(2) f(x)=3x5-20x3+10; [-3,3]
(3) f(x)= ; [0,3]
解:(1)clear;
fun=inline('x.^2.*sin(x.^2-x-2)');
fplot(fun,[-2 2]);grid on;
x(1)=-2;
x(3)=fminbnd(fun,-1,-0.5);
x(5)=fminbnd(fun,1,2);
fun2=inline('-x.^2.*sin(x.^2-x-2)');
x(2)=fminbnd(fun2,-2,-1);
x(4)=fminbnd(fun2,-0.5,0.5);
x(6)=2
feval(fun,x)
(2)clear;
fun=inline('3*x.^5-20*x.^3+10');
fplot(fun,[-3 3]);grid on;
x(1)=-3;
x(3)=fminsearch(fun,2.5);
fun2=inline('-(3*x.^5-20*x.^3+10)');
x(2)=fminsearch(fun2,-2.5);
x(4)=3;
feval(fun,x)
(3)fun=inline('abs(x^3-x^2-x-2)');
fplot(fun,[0 3]);grid on;
fminbnd(fun,1.5,2.5)
fun2=inline('-abs(x^3-x^2-x-2)');
第三章
1.要求在闭区间]2,0[上产生具有10个等距采样点的一维数组。试用两种不同的指令实
现。
方法一t1=linspace(0,2*pi,10)
t1=00.69811.39632.09442.79253.49074.18884.88695.58516.2832
方法二t2=0:2*pi/9:2*pi
结果与t1相同
2.由指令rand('state',0),A=rand(3,5)生成二维数组A,试求该数组中所有大于0.5的元素
的位置,分别求出它们的“全下标”和“单下标”。rand('state',0),A=rand(3,5)
[ri,cj]=find(A>0.5);
id=sub2ind(size(A),ri,cj);
ri=ri';
cj=cj';
disp('')
disp('大于0.5的元素的全下标')
disp(['行号',int2str(ri)])
disp(['列号',int2str(cj)])
disp('')
disp('大于0.5的元素的单下标')
disp(id')
A=
0.95010.48600.45650.44470.9218
0.23110.89130.01850.61540.7382
0.60680.76210.82140.79190.1763
大于0.5的元素的全下标
行号132332312
列号112234455
大于0.5的元素的单下标13569111213143.已知矩阵4321A,运行指令B1=A.^(0.5),B2=A^(0.5),可以观察到不同运算方法
所得结果不同。(1)请分别写出根据B1,B2恢复原矩阵A的程序。(2)用指令检验
所得的两个恢复矩阵是否相等。A=[1,2;3,4];
B1=A.^0.5
B2=A^0.5
A1=B1.*B1;
A2=B2*B2;
norm(A1-A2,'fro')
B1=
1.00001.4142
1.73212.0000
B2=
0.5537+0.4644i0.8070-0.2124i
07-1 第四章 图像显示
Matlab进行图像处理的步骤如下:
读取图像到Matlab工作空间
↓
对图像矩阵进行格式转换
↓
对图像矩阵数据进行处理
↓ ↓
显示图像 保存图像
【目录】
一、读图像和图像信息 ............................................................................................................. 2
1、读取图像 ............................................................................................................................ 2
2、读取图像信息 .................................................................................................................... 4
二、图像显示 .............................................................................................................................. 6
1、imshow(I,n) ......................................................................................................................... 6
2、imshow(I,[low,high]) .......................................................................................................... 7