文档库 最新最全的文档下载
当前位置:文档库 › 基于matlab的可视化界面制作

基于matlab的可视化界面制作

基于matlab的可视化界面制作
基于matlab的可视化界面制作

一个可发布的应用程序通常都需要具备一个友好的图形界面(比如,我们开课时或给学生上课而使用课件时,我们一般就会用到可视化界面)。这样用户不需要知道应用程序究竟是怎样执行各种命令的, 而只需要了解可见界面组件的使用方法用户也不需要知道命令是如何执行, 只要通过与界面交互就可以使指定行为得以正确执行。MATLAB可视化界面的设计, 一般有两种方法, 一是直接通过编辑M脚本文件产生GUI(这个方法就是我们在前面学习过的如何编写、调用M文件), 二是通过MATLAB图形用户界面开发环境GUIDE(Graphical User Interface Development Environment)来形成相应文件。这里只讲述在GUIDE环境中利用控件实现可视化界面功能, 不探讨直接通过编辑脚本文件实现可视化界面的方法。

MATLAB软件GUIDE为用户提供了一个方便高效的集成环境, 所有GUI支持的用户控件都集成在这个环境中, 并提供界面外观、属性和行为响应方式的设置方法。GUIDE将用户保存设计好的GUI界面保存在一个FIG资源文件中, 同时自动生成包含GUI初始化和组件界面布局控制代码的M文件, 为实现回调函数提供了一个参考框架。

下面以一个具体实例来说明GUIDE的开发使用以下所讲解的关于各控件的使用, 我们以版本为调试环境, 如果版本的环境和版本略有不同,但基本思想和方法一致。为了方便大家学习,此处提供二个版本(即文字和视频,文字的即为下面的叙述,视频请点击此处。)

实例要完成的功能如下:

首先运行M文件后,出现一个主画面

当分别点击按钮“螺旋线”、“内摆线”、“圆旋转成圆环”和“退出”命令按钮时,分别出现如下列图示的动态、静态的结果。

螺旋线图

内摆线图

圆动成环图

退出信息图

下面看具体的操作步骤:

1)启动Matlab并进入GUIDE环境:在Command Window下输入“guide”,进入GUIDE环境。出现如下图所示的界面(写到这里,发现文字叙述很繁琐,但还得写,要命)。这里Matlab提供了一个新建空白界面及三个样本界面,它们分别是:GUI with Uicontrols;GUI with Axes and Menu;Modal Question Dialog;当然还有一个标签是用来打开已经编写好的GUI的。一般来说,我们会用Blank GUI,即空白的界面来写自己的东西。进入后,Matlab就新建了一个fig文件(默认名是,同时得到如下的编辑窗口:

从上图我们可以看出Matlab 的Guide环境可以分为三个部分即菜单栏和工具栏、用户控件集、用户界面编辑窗口。菜单栏,暂时不作介绍,我们主要使用用户控件集(其它软件一般称为工具箱),用户控件集主要有命令按钮(Push Button)、切换按钮(Toggle Button)、单选按钮(Radio Button)、复选框按钮(Checkbox)、编辑框(Edit Button)、静态文本框(Static Button)

、滚动杆(Slider)、列表框(Listbox)、弹出式菜单(Pop-menu)、坐标轴(Axes)等。严格地讲, 坐标轴不能算控件的范畴。用户界面编辑窗口用于对受控的图形窗口进行编辑, 比如添加按钮、静态文本框等。

2)在用户界面编辑窗口添加相应控件(终于可以做具体的事了,这个就简单了,哈哈)

MATLAB可视化界面设计(下)

王林方发表于 2010-4-2 11:12:00

推荐

首先,在用户界面编辑窗口添加4个命令按钮(显示是OK的用个PUSH BUTTON),再如下图所示添加5个静态文本框(Static Text)、5个编辑文本框(Edit Text)和一个坐标系(Axes)

其次,按下表设置每个控件的属性值(具体操作是:右击要设置属性的控件——property inspector 命令——在弹出的属性窗口中找到相应的属性名称——将该属性的值修改成自己需要的值)

注:上面控件名称的编号,比如1,2之类,在界面上是没有的,只是我按照从上到下的次序,为方便叙述而编写的。

最后,添加程序(在添加程序前,最好先将文件保存一下,比如以为文件名保存),添加程序的常用方法是:单击菜单命令view——M-file Editor,此时,得到下面的程序:

function varargout = Exp8(varargin)

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...

'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @Exp8_OpeningFcn, ...

'gui_OutputFcn', @Exp8_OutputFcn, ...

'gui_LayoutFcn', [] , ...

'gui_Callback', []);

if nargin && ischar(varargin{1})

= str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

%上面的是系统初始化代码,绝对不要去修改它们。

function Exp8_OpeningFcn(hObject, eventdata, handles, varargin)

= hObject;

guidata(hObject, handles);

%上面的代码,告诉我们,一般的用户界面的自己设置的初始化状态应添加在这个函数内。function varargout = Exp8_OutputFcn(hObject, eventdata, handles)

varargout{1} = ;

%上面的函数返回的量直接到命令窗口。

function pushbuttonLxx_Callback(hObject, eventdata, handles)

%上面的函数是点击螺旋线按钮时,执行的代码,即可以在此处添加有关螺旋线的程序代码。function pushbuttonNBX_Callback(hObject, eventdata, handles)

%上面的函数是点击内摆线按钮时,执行的代码,即可以在此处添加有关内摆线的程序代码。

% --- Executes on button press in pushbuttonExit.

function pushbuttonExit_Callback(hObject, eventdata, handles)

%上面的函数是点击退出按钮时,执行的代码,即可以在此处添加退出时的程序代码。function editBCR_Callback(hObject, eventdata, handles)

%上面的函数是 editBCR这个编辑文本按钮回调时,执行的代码。

BigCircleRadial=str2double(get(hObject,'String'));

function editBCR_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

end

%上面的函数用来在程序中设置editBCR的属性值。

%上面的函数是editSCR这个编辑文本按钮回调时,执行的代码。

function editSCR_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

end

%上面的函数用来在程序中设置editSCR的属性值。

function editXZZ_Callback(hObject, eventdata, handles)

%上面的函数是editXZZ这个编辑文本按钮回调时,执行的代码。

function editXZZ_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

end

%上面的函数用来在程序中设置editXZZ的属性值。

function pushbuttonCtoC_Callback(hObject, eventdata, handles)

%上面的函数是点击圆旋转成圆环按钮时,执行的代码,即可以在此处添加圆旋转成圆环时的程序代码。

%上面的函数是editCR这个编辑文本按钮回调时,执行的代码。

function editCR_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end

%上面的函数用来在程序中设置editCR的属性值。

function editDist_Callback(hObject, eventdata, handles)

function editDist_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end

%上面的函数用来在程序中设置editDist的属性值。

下面真正添加自己的程序,最后成的程序如下:自己添加的程序用红色表示。

function varargout = Exp8(varargin)

gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...

'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @Exp8_OpeningFcn, ...

'gui_OutputFcn', @Exp8_OutputFcn, ...

'gui_LayoutFcn', [] , ...

'gui_Callback', []);

if nargin && ischar(varargin{1})

= str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

%上面的是系统初始化代码,绝对不要去修改它们。

function Exp8_OpeningFcn(hObject, eventdata, handles, varargin)

= hObject;

guidata(hObject, handles);

%这里选择了一个图片文件,作为初始画面,具体的图片可以选择自己喜欢的。

map1=imread('Water ');

image(map1)

%上面的代码,告诉我们,一般的用户界面的自己设置的初始化状态应添加在这个函数内。function varargout = Exp8_OutputFcn(hObject, eventdata, handles)

varargout{1} = ;

%上面的函数返回的量直接到命令窗口。

function pushbuttonLxx_Callback(hObject, eventdata, handles)

%上面的函数是点击螺旋线按钮时,执行的代码,即可以在此处添加有关螺旋线的程序代码。

axes

cla

v=2;

alf=pi/6;

omg=pi/5;

t=0::100;

x=v*sin(alf).*cos(omg*t).*t;

y=v*sin(alf).*sin(omg*t).*t;

z=v*cos(alf).*t;

%plot3(x,y,z)

axis([-100 100 -100 100 0 160])

grid on

axis equal on

comet3(x,y,z)

%上面的程序是“一质点,沿着已知圆锥面的一条直母线自圆锥的顶点起,作等速直线运动,另一方面这一条母线在圆锥面上,过圆锥的顶点绕圆锥的轴(旋转轴)作等速的转动,这时质点在圆锥面上的轨迹”的动态形成过程。

function pushbuttonNBX_Callback(hObject, eventdata, handles)

%上面的函数是点击内摆线按钮时,执行的代码,即可以在此处添加有关内摆线的程序代码。

axes

cla

a=str2double(get,'String'));

b=str2double(get,'String'));

k=str2double(get,'String'));

axis([-a-2 a+2 -a-2 a+2 0 a+2])

line([-a-2,a+2],[0,0]);

hold on

line([0,0],[-a-2,a+2

u=0:pi/30:2*pi;

x=a*cos(u);

y=a*sin(u);

plot(x,y)

x=b*cos(u)+a-b;

y=b*sin(u);

plot(x,y)

axis equal on

grid on

theta=0:pi/1800:k*a*pi;

x=(a-b)*cos(b/a*theta)+b*cos((a-b)/a*theta);

y=(a-b)*sin(b/a*theta)-b*sin((a-b)/a*theta);

comet(x,y)

%上面的程序是内摆线的动态的形成过程

% --- Executes on button press in pushbuttonExit.

function pushbuttonExit_Callback(hObject, eventdata, handles)

%上面的函数是点击退出按钮时,执行的代码,即可以在此处添加退出时的程序代码。

ss=questdlg('你真的要退出吗?','退出信息窗口!','不,我还想看看!','是的,我要退出!','是的,我要退出!');

switch ss

case '是的,我要退出!'

delete;

end

%上面的程序是退出程序时信息窗口

function editBCR_Callback(hObject, eventdata, handles)

%上面的函数是 editBCR这个编辑文本按钮回调时,执行的代码。

function editBCR_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

end

%上面的函数用来在程序中设置editBCR的属性值。

function editSCR_Callback(hObject, eventdata, handles)

%上面的函数是editSCR这个编辑文本按钮回调时,执行的代码。

function editSCR_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

end

%上面的函数用来在程序中设置editSCR的属性值。

function editXZZ_Callback(hObject, eventdata, handles)

%上面的函数是editXZZ这个编辑文本按钮回调时,执行的代码。

function editXZZ_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

end

%上面的函数用来在程序中设置editXZZ的属性值。

function pushbuttonCtoC_Callback(hObject, eventdata, handles)

%上面的函数是点击圆旋转成圆环按钮时,执行的代码,即可以在此处添加圆旋转成圆环时的程序代码。axes

cla

%a=4;

%b=10;

a=str2double(get,'String'));

b=str2double(get,'String'));

u=0:pi/30:2*pi;

y=a.*cos(u)+b;

z=a.*sin(u);

n=length(u);

x=0*ones(1,n);

if a

axis([-b-2 b+2 -b-2 b+2 -a-2 a+2])

else

axis([-a-2 a+2 -a-2 a+2 -b-2 b+2])

end

plot3(x,y,z)

pause(1)

for t=0:pi/60:2*pi

x=y.*sin(t);

y1=y.*cos(t);

plot3(x,y1,z)

pause

grid on

hold on

%axis equal on

%view([-20,0])

end

%上面的程序是圆旋转成圆环的动态的形成过程

function editCR_Callback(hObject, eventdata, handles) %上面的函数是editCR这个编辑文本按钮回调时,执行的代码。function editCR_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end

%上面的函数用来在程序中设置editCR的属性值。

function editDist_Callback(hObject, eventdata, handles)

function editDist_CreateFcn(hObject, eventdata, handles)

if ispc

set(hObject,'BackgroundColor','white');

else

set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor')); end

%上面的函数用来在程序中设置editDist的属性值。

matlab中GUI设计

MATLAB的GUI 程序设计 Chapter 8: Design of MATLAB of GUI program GUI(Graphical User Interfaces):由各种图形对象组成的用户界面,在这种用户界面下,用户的命令和对程序的控制是通过“选择”各种图形对象来实现的。 基本图形对象分为控件对象和用户界面菜单对象,简称控件和菜单。 一. 控件对象及属性(Object and its attributes of controller)) 1. GUI控件对象类型(The mode of controller object) 控件对象是事件响应的图形界面对象。当某一事件发生时,应用程序会做出响应并执行某些预定的功能子程序(Callback). 控件对象及其功能:(表7—1) 2. 控件对象的描述(Description of controller object) MATLAB中的控件大致可分为两种,一种为动作控件,鼠标点击这些控件时会产生相应的响应。一种为静态控件,是一种不产生响应的控件,如文本框等。

每种控件都有一些可以设置的参数,用于表现控件的外形、功能及效果,既属性。属性由两部分组成:属性名和属性值,它们必须是成对出现的。 (1)按钮(Push Buttons):执行某种预定的功能或操作; (2)开关按钮(Toggle Button):产生一个动作并指示一个二进制状态(开或关),当鼠点击它时按钮将下陷,并执行callback(回调函数)中指定的内容,再次点击,按钮复原,并再次执行callback 中的内容; (3)单选框(Radio Button):单个的单选框用来在两种状态之间切换,多个单选框组成一个单选框组时,用户只能在一组状态中选择单一的状态,或称为单选项; (4)复选框(Check Boxes):单个的复选框用来在两种状态之间切换,多个复选框组成一个复选框组时,可使用户在一组状态中作组合式的选择,或称为多选项; (5)文本编辑器(Editable Texts):用来使用键盘输入字符串的值,可以对编辑框中的内容进行编辑、删除和替换等操作; (6)静态文本框(Static Texts):仅仅用于显示单行的说明文字; (7)滚动条(Slider):可输入指定范围的数量值;

MATLAB可视化方法和技巧1_3复数的计算和图示

复数的计算和图示 表3 MATLAB关于复数运算的函数 {范例3_1}复数的加减法 设有两个复数z1 = 1 + 2i和z2 = 4 + 3i,其中i是虚数单位求两个复数的和z1 + z2和差z2–z1。 [解析]复数有三种表示形式 (1)代数式 z = x + i y(3_1_1) (2)三角式 z = r(cosθ + isinθ) (3_1_2) 其中r是复数的模,θ是复角。代数式与三角式的换算关系是 r=arctan y x θ(3_1_3) x = r cosθ,y = r sinθ(3_1_4) (3)指数式 z = r e iθ(3_1_5) 其中利用了欧拉公式 e iθ= cosθ + isinθ(3_1_6) 设有两个复数 z1 = x1 + i y1,z2 = x2 + i y2(3_1_7) 复数加法是 z= z1 + z2 = (x1 + x2) + i(y1 + y2) (3_1_8) 复数减法是 z= z1 - z2 = (x1 - x2) + i(y1 - y2) (3_1_9) [程序]P3_1plus.m如下。 %复数的加减法 clear %清除变量 z1=1+2i; %第1个复数(1) x1=real(z1); %取第1个复数的实部(2) y1=imag(z1); %取第1个复数的虚部(2) x2=4; %第2个复数的实部 y2=3; %第2个复数的虚部 z2=x2+i*y2; %形成第2个复数(3) z=z1+z2; %两复数之和(4) x=real(z); %取复数的实部 y=imag(z); %取复数的虚部 figure %创建图形窗口 quiver(0,0,x1,y1,0) %在复平面画第1个复数(5)

基于matlab的文字识别算法 课程设计

摘要 本课程设计主要运用MATLAB的仿真平台设计进行文字识别算法的设计与仿真。也就是用于实现文字识别算法的过程。从图像中提取文字属于信息智能化处理的前沿课题,是当前人工智能与模式识别领域中的研究热点。由于文字具有高级语义特征,对图片内容的理解、索引、检索具有重要作用,因此,研究图片文字提取具有重要的实际意义。又由于静态图像文字提取是动态图像文字提取的基础,故着重介绍了静态图像文字提取技术。随着计算机科学的飞速发展,以图像为主的多媒体信息迅速成为重要的信息传递媒介,在图像中,文字信息(如新闻标题等字幕)包含了丰富的高层语义信息,提取出这些文字,对于图像高层语义的理解、索引和检索非常有帮助。 关键字:文字识别算法;静态图像文字提取;检索

目录 1 课程设计目的 (3) 2 课程设计要求 (4) 3 相关知识 (5) 4 课程设计分析 (8) 5 系统实现 (9) 6 系统测试与分析 (17) 6.1文字识别算法仿真结果 (17) 6.2基于字符及单词的识别 (19) 6.2.1 基于字符的识别 (19) 6.2.2 基于单词的识别 (20) 6.3现存算法的问题 (21) 6.3.1 大多文字识别方法依赖于人工定义的特征 (21) 6.3.2 脱离上下文的字符识别易造成显著的歧义 (21) 6.3.3 简单的单词整体识别有着较大的局限性 (22) 6.3.4 训练样本制作繁琐 (22) 7 参考文献 (23)

图像文字提取又分为动态图像文字提取和静态图像文字提取两种,其中,静态图像文字提取是动态图像文字提取的基础,其应用范围更为广泛,对它的研究具有基础性,所以本文主要讨论静态图像的文字提取技术。静态图像中的文字可分成两大类:一种是图像中场景本身包含的文字,称为场景文字;另一种是图像后期制作中加入的文字,称为人工文字,如右图所示。场景文字由于其出现的位置、小、颜色和形态的随机性,一般难于检测和提取;而人工文字则字体较规范、大小有一定的限度且易辨认,颜色为单色,相对与前者更易被检测和提取,又因其对图像内容起到说明总结的作用,故适合用来做图像的索引和检索关键字。对图像中场景文字的研究难度大,目前这方面的研究成果与文献也不是很丰富,本文主要讨论图像中人工文字提取技术。 静态图像中文字的特点 静态图像中文字(本文特指人工文字,下同)具有以下主要特征: (1)文字位于前端,且不会被遮挡; (2)文字一般是单色的; (3)文字大小在一幅图片中固定,并且宽度和高度大体相同,从满足人眼视觉感受的角度来说,图像中文字的尺寸既不会过大也不会过小; (4)文字的分布比较集中,排列一般为水平方向或垂直方向; (6)多行文字之间,以及单行内各个字之间存在不同于文字区域的空隙。在静态图片文字的检测与提取过程中,一般情况下都是依据上述特征进行处理的。 数字图象处理 静态图像文字提取一般分为以下步骤:文字区域检测与定位、文字分割与文字提取、文字后处理。其流程如图所示。 图1 静态文字处理流程图

实验五_MATLAB计算的可视化

实验五 MATLAB 计算的可视化(一) 实验目的 1. 熟练掌握MATLAB 二维曲线的绘制 2.掌握图形的修饰 3.掌握三维图的绘制 4.了解各种特殊图形的绘制 内容与步骤 1.在同一幅图形窗口中分别绘制y1=sin(t)和y2=cos(t)二条函数曲线,t 的取值范围为[0,10]。y1用红色虚线表示,y2用蓝色实线表示,横坐标轴名称为“时间t ”,纵坐标轴名称为“正弦、余弦”,整个图形的标题为“正弦和余弦曲线”。在坐标(1.7*pi ,-0.3)处添加文字“sin(t)”, 在坐标(1.6*pi ,0.8)处添加文字“cos(t)”,并在右上角添加图例,其运行界面图如下图所示。之后并尝试修改坐标轴刻度。 2.用subplot 命令在同一个窗口的不同子窗口绘制曲线y=sin(t),y1=sin(t+0.25) y2=sin(t+0.5),其中t=[0 10]。 3.绘制三维曲线:?? ? ??=≤≤==)cos()sin()200() cos()sin(t t t z t t y t x π (注意:用plot3命令) 4.三维网线图:绘制z=sin(y)cos(x) 三维网线图。 5. 三维曲面图 绘制22y x z +=的三维曲面图,x 在[-5,5]范围,y 在[-5,5]范围。将曲面图颜色用shading 命令连续变化,并用颜色标尺显示色图(使用函数colorbar 生成)。生成的图形如下图所示。

6.请绘制一个饼形图,数据如下表所示 7. 用semilogx命令绘制传递函数为1//(s+1)(0.5s+1)的对数幅频特性曲线,横坐标为w,纵坐标为Lw,w的范围为10-2-103,按对数分布。

Matlab 特殊图形和高维可视化

Matlab 特殊图形和高维可视化 2009-10-20 01:06 7.4 特殊图形和高维可视化 7.4.1 特殊图形指令例示 7.4.1.1 面域图area 【* 例7.4.1 .1-1 】面域图指令area 。该指令的特点是:在图上绘制多条曲线时,每条曲线(除第一条外)都是把“前”条曲线作基线,再取值绘制而成。因此,该指令所画的图形,能醒目地反映各因素对最终结果的贡献份额。注意:( 1 )area 的第一输入宗量是单调变化的自变量。第二输入宗量是“各因素”的函数值矩阵,且每个“因素”的数据取列向量形式排放。第三输入宗量是绘图的基准线值,只能取标量。当基准值为0 (即以x 轴为基准线)时,第三输入宗量可以缺省。(2 )本例第<4> 条指令书写格式x' , Y' ,强调沿列方向画各条曲线的事实。 clf;x=-2:2 % 注意:自变量要单调变化 Y=[3,5,2,4,1;3,4,5,2,1;5,4,3,2,5] % 各因素的相对贡献份额 Cum_Sum=cumsum(Y) % 各曲线在图上的绝对坐标 area(x',Y',0) %<4> legend(' 因素A',' 因素B',' 因素C'),grid on,colormap(spring) x = -2 -1 0 1 2 Y = 3 5 2 4 1 3 4 5 2 1 5 4 3 2 5 Cum_Sum = 3 5 2 4 1 6 9 7 6 2 11 13 10 8 7

图 7.4.1 .1-1 面域图表现各分量的贡献 7.4.1.2 各种直方图bar, barh, bar3, bar3h 【 * 例 7.4.1 .2-1 】二维直方图有两种图型:垂直直方图和水平直方图。而每种图型又有两种表现模式:累计式:分组式。本例选其两种加以表现。 x=-2:2; % 注意:自变量要单调变化 Y=[3,5,2,4,1;3,4,5,2,1;5,4,3,2,5]; % 各因素的相对贡献份额 subplot(1,2,1),bar(x',Y','stacked') % “累计式”直方图 xlabel('x'),ylabel('\Sigma y'),colormap(cool)% 控制直方图的用色legend(' 因素 A',' 因素 B',' 因素 C') subplot(1,2,2),barh(x',Y','grouped') % “分组式”水平直方图 xlabel('y'),ylabel('x') 图 7.4.1 .2-1 二维直方图 clf;x=-2:2; % 注意:自变量要单调变化 Y=[3,5,2,4,1;3,4,5,2,1;5,4,3,2,5]; % 各因素的相对贡献份额 subplot(1,2,1),bar3(x',Y',1) % “队列式”直方图 xlabel(' 因素 ABC'),ylabel('x'),zlabel('y') colormap(summer) % 控制直方图的用色 subplot(1,2,2),bar3h(x',Y','grouped') % “分组式”水平直方图 ylabel('y'),zlabel('x')

用matlab实现图像灰度变换课程设计

课程设计报告册 课程名称: MATLAB课程设计 课题名称:灰度变换增强 专业班级: 姓名: Bob Wang 学号: 15164 课程设计主要场所:信息楼220 时间: 指导教师:成绩:

前言 数字图像处理技术是20世界60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或变成以完成各自的计算。MATLAB中集成了功能强大的图像处理工具箱。由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。 MATLAB是一种以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的要求,与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。我们学习掌握MATLAB,也可以说是在科学工具上与国际接轨。

目录 一、课程设计目的 (2) 二、设计任务及容 (2) 三、课题设计实验条件 (3) 四、涉及知识 (3) 五、具体设计过程及调试 (4) 5.1、图像的读入和显示 5.1.1、打开图像 (4) 5.1.2、显示原图像 (5) 5.1.3、图像灰度处理 (7) 5.1.4、显示灰阶后图像 (8) 5.2、直方图均衡化 5.2.1、生成直方图 (10) 5.2.2、直方图均衡化 (12) 5.3、灰度变换 5.3.1、线性变换 (9) 5.3.2、分段线性变换 (9) 5.3.3、非线性变换.................................... (9) 六、心得体会 (17) 七、参考文献 (18) 八、程序清单 (19)

基于MATLAB平台的可视化图像处理系统设计方法

[收稿日期]20050228 [作者简介]黄书先(1962),女,1983年大学毕业,硕士,副教授,现主要从事石油勘探开发研究与科研管理工作。 基于MATLAB 平台的可视化图像处理系统 设计方法 黄书先 (长江大学科学技术处,湖北荆州434023) [摘要]以MATLAB 为工作语言和开发环境,开发了一个在M AT LAB 平台下的可视化图像处理系统, 可实现包括对测井图像在内的一般图像的精细处理,并能和用户开发的程序接口。为M AT LAB 的再开发 和可视化系统的设计作了有益的探索。 [关键词]MATLAB;图像处理;可视化GUI 界面 [中图分类号]TP 311111 [文献标识码]A [文章编号]16731409(2005)04015803 MAT LAB 的图像处理工具为自然科学各学科领域的学者、研究人员和工程师提供了一个直观的灵活的环境,用以解决复杂的图像处理问题。用MAT LAB 语言开发的图像处理算法可以在所有支持MAT LAB 的平台上共享。也可以将m 语言算法和现存的C 程序集成在一起或者将MATLAB 开发的m 语言算法和GU Is 编译为C/C++代码,供其他程序调用,或者发布为一个独立的应用程序。下面笔者提出一个基于MATLAB 平台的可视化图像处理系统设计方法,可用于包括测井图像资料在内的一般图像的精细处理。 1 系统总体设计 在MAT LAB 中有个重要的图像处理工具包[1],该工具包是由一系列支持图像处理操作的函数组成的,按功能可以分为以下几类:图像显示;图像文件输入与输出;几何操作;像素值统计;图像增强;图像识别;图像滤波;图像变换;邻域和块操作;二值图像操作;颜色映射和颜色空间转换;图像格式转换等。和其他工具包一样,用户还可以根据需要书写自己的函数,以满足特定的需要;也可以将这个工具包和信号处理工具包或小波工具包等其他工具包联合起来使用。 MAT LAB 提供了交互式的GU I 开发环境[2~4],用户只需要设置各个对象相应的属性,系统自动生成与之对应的界面,大大减少了开发的难度。本设计的MAT LAB 图像处理系统由封面、主界面和各个子功能界面组成,其框图如图1所示。程序总流程图如图2所示。 2 封面界面设计 首先用MAT LAB 编辑封面的脚本文件,生成系统的封面界面,然后再进入处理的主界面。 在设计封面时,要做好封面的总体布局,力求完美。要插入背景,首先要找到所用的函数(这在一般的书中很难找到);其次要注意设置axes 的属性。在显示背景图像时,不能用imshow ()函数,如果用此函数,背景图像只能显示在封面的一部分,不能整屏覆盖;而要用imagesc ()函数。MATLAB 提供修改文本中文字的字体,它支持华文中宋、华文彩云、华文仿宋、楷书、黑体等,功能较强。 在设计封面的过程中,最主要的技术是要解决时间的显示,如果只用MATLAB 中的clock ()函数,则显示的是静态时间,而不会显示和电脑同步的动态时间。为了解决这个问题,需做一个循环判断语句:while find (get (0,'c hildren'))==h0。成立的条件是,只要是当前窗口循环,否则停止,这样可以减少CPU 的负担。同时,要实时提取clock ()函数,可用fix (clock),使提取的时间更美观。#158#长江大学学报(自科版)2005年4月第2卷第4期/理工卷第2卷第2期 Jour nal of Yangtze University (Nat Sci Edit)Apr 12005Vol 12No 14/Sci &Eng V,Vol 12No 12

matlab课程设计-图像处理

图像处理系统 --学习报告 学号: 姓名: 专业: 日期:

1 使用语言 Matlab 2图像选择及变换 2.1 原始图像选择读取 原始图片如下: 图1 原始图片 MATLAB为用户提供了专门的函数以从图像格式的文件中读写图像数据。 采用的是imrea d函数来实现图像文件的读取操作,采用的格式如下: A=imread(’filename.fmt’) 该语句用于读取字符串“filename”对应的灰度图像或彩色图像,“fmt”指定了文件的格式。 采用imfinfo函数查询图像文件的信息。其语句格式如下:

Info=imfinfo(‘filename.fmt’) 该语句可以在命令窗口会显示出文件的基本信息。 采用imshow函数进行图像的显示,采用的格式如下: A=imread(‘filename.fmt’); imshow(A); 当这种显示方式要求被显示的图像要么在当前目录下或MATLAB的目录下。 采用rgb2gray函数进行真彩色图像与灰阶强度图像的转变,其格式调用如下:A=rgb2gry(‘filename.fmt’); 得到的图像可以进行统计与处理,能完成要求。 图像读入与显示和变化的源代码如下: close all; clear all; x=imread('xuewu.jpg'); imshow(x); imfinfo('xuewu.jpg') 程序运行结果如下图2所示: 图2 读取后显示图片

命令窗口中,显示如下: Filename: 'xuewu.jpg' FileModDate: '27-Dec-2011 08:58:56' FileSize: 348015 Format: 'jpg' FormatVersion: '' Width: 1024 Height: 768 BitDepth: 24 ColorType: 'truecolor' FormatSignature: '' NumberOfSamples: 3 CodingMethod: 'Huffman' CodingProcess: 'Sequential' Comment: {}2.2 转换图像为灰阶图像 2.2 图像的变换 在后期的处理中,有部分程序需要用到灰阶图片,因此提前将图片进行转换,得到灰阶图片。采用rgb2gray函数进行真彩色图像与灰阶强度图像的转变其格式调用如下: A=rgb2gry(‘filename.fmt’); 得到的图像可以进行统计与处理。 程序源代码如下: x1=rgb2gray(x); figure,imshow(x1) 程序运行结果如下图3所示:

实验4、matlab的计算可视化和GUI设计

p345 subplot(2,2,1) t1=0:0.1:2; y1=sin(2*pi*t1); plot(t1,y1); title('y=sin(2\pit)') 练习: subplot(2,2,2) t2=0:0.1:2; y2=[exp(-t2);exp(-2*t2);exp(-3*t2)]; plot(t2,y2) axis([0 2 -0.2 1.2]); title('y=e-t,y=e-2t,y=e-3t') 练习: subplot(2,2,3); t3=[0 1 1 2 2 3 4]; y3=[0 0 2 2 0 0 0]; plot(t3,y3); axis([0 4 -0.5 3]); title('脉冲信号') 练习: subplot(2,2,4); t4=0:0.1:2*pi; plot(sin(t4),cos(t4));

axis([-1.2 1.2 -1.2 1.2]); axis equal; title('圆') 练习: P346 x=0:0.1:20; zeta=0 y1=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt( 1-zeta^2)*x+acos(zeta)); plot(x,y1) zeta=0.3; y2=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt( 1-zeta^2)*x+acos(zeta)); hold on plot(x,y2,'r:') zeta=0.5; y3=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt( 1-zeta^2)*x+acos(zeta)); plot(x,y3,'g*') zeta=0.707; y4=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt( 1-zeta^2)*x+acos(zeta)); plot(x,y4,'m-') title('二阶系统曲线') legend('\zeta=0','\zeta=0.3','\zeta=0.5','\zeta=0. 707') grid on gtext('\zeta=0') gtext('\zeta=0.3') gtext('\zeta=0.5') gtext('\zeta=0.707') ginput(3) zeta = ans = 2.6037 0.9035 13.1106 2.0029 4.2166 1.0380 P347 h_fig=gcf h_axis=gca h_line1=gco h_title=get(gca,'title') h_text2=findobj(h_fig,'string','\zeta=0.3') h_fig = 1 h_axis = 151.0018 h_line1 = 1 h_title = 152.0018 h_text2 = Empty matrix: 0-by-1 set(h_line1,'linewidth',5)

数字图像处理 课程设计报告 matlab

欢迎阅读数字图像处理 课程设计报告 姓名: 学号: 班级: .net 设计题目:图像处理 教师:赵哲老师 提交日期: 12月29日

一、设计内容: 主题:《图像处理》 详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等), 二、涉及知识内容: 1、二值化 2、各种滤波 3、算法等 三、设计流程图 插入图片 对图片进行处理 二值化处理 重复 输出两幅图 结束 四、实例分析及截图效果: 运行效果截图: 第一步:读取原图,并显示 close all;clear;clc; % 清楚工作窗口clc 清空变量clear 关闭打开的窗口close all I=imread('1.jpg'); % 插入图片1.jpg 赋给I imshow(I);% 输出图I I1=rgb2gray(I);%图片变灰度图 figure%新建窗口

subplot(321);% 3行2列第一幅图 imhist(I1);%输出图片 title('原图直方图');%图片名称 一,图像处理模糊 H=fspecial('motion',40); %% 滤波算子模糊程度40 motion运动 q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制 q1=rgb2gray(q); imhist(q1); title('模糊图直方图'); 二,图像处理锐化 H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的 qq=imfilter(I,H,'replicate'); qq1=rgb2gray(qq); imhist(qq1); title('锐化图直方图'); 三,图像处理浮雕(来源网络) %浮雕图 l=imread('1.jpg'); f0=rgb2gray(l);%变灰度图 f1=imnoise(f0,'speckle',0.01); %高斯噪声加入密度为0.01的高斯乘性噪声 imnoise噪声污染图像函数 speckle斑点 f1=im2double(f1);%把图像数据类型转换为双精度浮点类型 h3=1/9.*[1 1 1;1 1 1;1 1 1]; %采用h3对图像f2进行卷积滤波 f4=conv2(f1,h3,'same'); %进行sobel滤波 h2=fspecial('sobel'); g3=filter2(h2,f1,'same');%卷积和多项式相乘 same相同的 k=mat2gray(g3);% 实现图像矩阵的归一化操作 四,图像处理素描(来源网络) f=imread('1.jpg'); [VG,A,PPG] = colorgrad(f); ppg = im2uint8(PPG); ppgf = 255 - ppg; [M,N] = size(ppgf);T=200; ppgf1 = zeros(M,N); for ii = 1:M for jj = 1:N if ppgf(ii,jj)

matlab计算结果的可视化

第五讲计算结果的可视化 本节介绍MATLAB 的两种基本绘图功能:二维平面图形和三维立体图形。 5.1 二维平面图形 5.1.1 基本图形函数 plot 是绘制二维图形的最基本函数,它是针对向量或矩阵的列来绘制曲线的。也就是说,使用plot 函数之前,必须首先定义好曲线上每一点的x 及y 坐标,常用格式为:(1)plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的序号为横坐标值绘制 曲线。当x 为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线, 当x 为m× n 矩阵时,就由n 条曲线。 (2)plot(x,y) 以x 元素为横坐标值,y 元素为纵坐标值绘制曲线。 (3)plot(x,y1,x,y2,…) 以公共的x 元素为横坐标值,以y1,y2,… 元素为纵坐标值绘 制多条曲线。 例5.1.1 画出一条正弦曲线和一条余弦曲线。 >> x=0:pi/10:2*pi; >> y1=sin(x); >> y2=cos(x); >> plot(x,y1,x,y2) 图5.1.1 函数plot 绘制的正弦曲线 在绘制曲线图形时,常常采用多种颜色或线型来区分不同的数据组,MATLAB 软件专 门提供了这方面的参数选项(见表5.1.1),我们只要在每个坐标后加上相关字符串,就可实 现它们的功能。 - 2 - 表5.1.1 绘图参数表 色彩字符颜色线型字符线型格式标记符号数据点形式标记符号数据点形式 y 黄- 实线. 点<小于号 m 紫:点线o 圆s 正方形 c 青-. 点划线x 叉号 d 菱形 r 红- - 虚线+ 加号h 六角星 g 绿* 星号p 五角星 b 蓝v 向下三角形 w 白^ 向上三角形 k 黑>大于号 例如,在上例中输入 >> plot(x,y1,'r+-',x,y2,'k*:') 则得图5.1.2 图5.1.2 使用不同标记的plot 函数绘制的正弦曲线 5.1.2 图形修饰 MATLAB 软件为用户提供了一些特殊的图形函数,用于修饰已经绘制好的图形。 表5.1.2 图形修饰函数表

MATLAB课程设计报告图像处理

一.课程设计相关知识综述...................................................................... 1.1 研究目的及意义 (3) 1.2 数字图像处理研究的内容........................................................... 1.3 MATLAB 软件的介绍.................................................................. 1.3.1 MATLAB 语言的特点......................................................... 1.3.2 MATLAB 图像文件格式.................................................... 1.3.3 MATLAB 图像处理工具箱简介........................................ 1.3.4 MATLAB 中的图像类型.................................................... 1.3.5 MATLAB 的主要应用........................................................ 1.4 函数介绍........................................................................................ 二.课程设计内容和要求........................................................................... 2.1 主要研究内容................................................................................ 2.2 具体要求....................................................................................... 2.3 预期达到的目标........................................................................... 三.设计过程............................................................................................... 3.1 设计方案及步骤............................................................................ 3.2 程序清单及注释........................................................................... 3.3 实验结果........................................................................................ 四.团队情况................................................................................................ 五.总结....................................................................................................... 六.参考文献............................................................................................... 一.课程设计相关知识综述. 1.1研究目的及意义

中国矿业大学 实验六 MATLAB数据可视化

实验六MATLAB数据可视化 一、实验目的 掌握MATLAB 二维、三维图形绘制,掌握图形属性的设置和图形修饰;掌握图像文件的读取和显示。 二、实验内容 (1) 二维图形绘制。 (2) 三维曲线和三维曲面绘制。 三、实验步骤 1.二维图形绘制 (1) 二维图形绘制主要使用函数plot。 >> clear all; >> x=linspace(0,2*pi,100); >> y1=sin(x); >> plot(x,y) >> hold on >> y2=cos(x) >> plot(x,y) >> hold off

注:hold on 用于保持图形窗口中原有的图形,hold off解除保持。 (2) 函数plot 的参数也可以是矩阵。 >> close all >> x=linspace(0,2*pi,100); >> y1=sin(x); >> y2=cos(x); >> A=[y1 ; y2]'; >> B=[x ; x]' >> plot(B,A)

(3) 选用绘图线形和颜色。>> close all >> plot(x,y1,'g+',x,y2, 'r:') >> grid on

(4) 添加文字标注。 >> title('正弦曲线和余弦曲线') >> ylabel('幅度') >> xlabel('时间') >> legend('sin(x)', 'cos(x)') >> gtext('\leftarrowsinx')

(5) 修改坐标轴范围。 >> axis equal >> axis normal >> axis([0 pi 0 1.5]) 程序如下: x=linspace(0,2*pi,100); y1=sin(x); y2=cos(x); A=[y1 ; y2]'; B=[x ; x]' plot(B,A) plot(x,y1,'g+',x,y2, 'r:') axis equal axis normal axis([0 pi 0 1.5])

MATLAB课程设计

二阶弹簧—阻尼系统的PID 控制器设计及其参数整定 班级:电控(中荷),学号:200710234***,姓名:包艳 1 前 言 PID 控制器结构简单,其概念容易理解,算法易于实现,且具有一定的鲁棒 性,因此,在过程控制领域中仍被广泛使用,除非在特殊情况下证明它不能满足既定的性能要求。对于单输入单输出的系统,尤其是阶跃响应单调变化的低阶对象,已有大量的PID 整定方法及其比较研究。当对象的阶跃响应具有欠阻尼特性时,如果仍近似为惯性对象,被忽略的振荡特性有可能引起控制品质的恶化。现有的一些针对二阶欠阻尼对象的PID 整定方法,例如极点配置方法,幅值相位裕量方法等,尽管在各自的假设前提下取得了较好的控制效果,但并非适用于所有的二阶欠阻尼对象,其性能鲁棒性问题也有待讨论。 本文通过使用MATLAB 对二阶弹簧—阻尼系统的控制器(分别使用P 、PI 、PID 控制器)设计及其参数整定,定量分析比例系数、积分时间与微分时间对系统性能的影响。同时,掌握MATLAB 语言的基本知识进行控制系统仿真和辅助设计,学会运用SIMULINK 对系统进行仿真,掌握PID 控制器参数的设计。 2 研究的原理 积分(I )控制具有积分控制规律的控制称为积分控制,即I 控制,I 控制的传递函数为: s s K G i C = )(。其中, Ki 称为积分系数。控制器的输出信号为:

U(t)= ?t I t e K )( dt。或者说,积分控制器输出信号u(t) 的变化速率与输入信号e(t) 成正比,即: )( )( t e dt t du K I = 。 对于一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个系统是有稳态误差的或简称有差系统.为了消除稳态误差,在控制器必须引入”积分项”.积分项对误差取决于时间的积分,随着时间的增加,积分项会增大使稳态误差进一步减小,直到等于零. 通常,采用积分控制器的主要目的就是使用系统无稳态误差,由于积分引入了相位滞后,使系统稳定性变差,增加积分器控制对系统而言是加入了极点,对系统的响应而言是可消除稳态误差,但这对瞬时响应会造成不良影响,甚至造成不稳定,因此,积分控制一般不单独使用,通常结合比例控制器构成比例积分(PI)控制器.

Matlab的gui界面设计实例练习

一个不错的Matlab的gui界面设计实例 %非常漂亮的日历, function CalendarTable; % calendar 日历 % Example: % CalendarTable; S=datestr(now); [y,m,d]=datevec(S); % d is day % m is month % y is year DD={'Sun','Mon','Tue','Wed','Thu','Fri','Sat'}; close all figure; for k=1:7; uicontrol(gcf,'style','text',... 'unit','normalized','position',[0.02+k*0.1,0.55,0.08,0.06],... 'BackgroundColor',0.6*[1,1,1],'ForegroundColor','b',... 'String',DD(k),'fontsize',16,'fontname','times new roman'); end h=1; ss='b'; qq=eomday(y,m); for k=1:qq; n=datenum(y,m,k); [da,w] = weekday(n); if k==d; ss='r'; end uicontrol(gcf,'style','push',... 'unit','normalized','position',[0.02+da*0.1,0.55-h*0.08,0.08,0.06],... 'BackgroundColor',0.6*[1,1,1],'ForegroundColor',ss,... 'String',num2str(k)); ss='b'; if da==7; h=h+1;

3-MATLAB图形可视化

MATLAB绘图 摘要:MATLAB 可以表达出数据的二维、三维和四维的图形。通过对图形的线型、立面、色彩、光线、视角等属性的控制,可把数据的内在特征表现得更加细腻完善。二维图形的绘制是MATLAB 语图形处理基础,也是在绝大多数数值计算中广泛应用的图形之一。为了显示三维图形,MATLAB提供了各种各样的函数。有一些函数可在三维空间中画线,而另一些可以画曲面与线格框架。 关键词:二维绘图三维绘图特殊绘图极坐标绘图柱坐标绘图球坐标绘图四维表现图 引言 MATLAB,即“矩阵实验室”,它具有强大的绘图功能。语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。不仅能绘制几乎所有的标准图形,而且其表现形式也是丰富多样的。matlab语言不仅具有高层绘图能力,而且还具有底层绘图能力——句柄绘图方法。在面向对象的图形设计基础上,使得用户可以用来开发各专业的专用图形。本文从图形出发,详尽地介绍MATLAB的绘图功能及其用法。 一、二维绘图 二维图形的绘制是MATLAB语言图形处理的基础,它包括一般二维图形的绘制和特殊二维图形的绘制。 (一)、一般的二维图形的绘制 1.使用plot作图 【命令】 plot 【调用格式】 plot(x) %向量绘图 plot(x,y) %基本函数绘图 plot(x,y,'cs') %自定义样式基本函数绘图,c 颜色,s线型 plot(x,y,'cs','markersize',n) %自定义样式与大小格式 plot(x1,y1,x2,y2,…) %多曲线绘图格式 plot(x1,y1,'cs1',x2,y2,'cs2',…) %自定义样式多曲线绘图 plot(x1,y1,'cs1',x2,y2,'cs2',…,' markersize',n)%自定义样式与大小多曲线绘图格式 subplot(m,n,p) % 子图分割,m代表行;n代表列;p代表绘图序号此命令绘制不同的线型、点标和颜色的图形,其中cs为字符,可以代表不同的属性,包括线型、点标和颜色。 plot绘图函数属性参数

【原创】MATLAB实验报告-第二次-用MATLAB实现计算数据可视化-北京交通大学

MATLAB 上机实验报告( 2 ) 实验内容: 一、试用如下几种方法来建立向量,观察结果 ( 1) x=1:5, x=(1:5) ' 实验结果:x=1:5是行向量,x=(1:5)是列向量.且1为初始值,5为终止值,默认的步长为 1. >> x=1:5 1 2 3 4 5 >> x=(1:5)' x = 1 2

3 4 5 ( 2) x=0:pi/4:pi 实验结果:x=0:pi/4:pi 指的是x=(0,0.25*pi,0.50*pi,0.75*pi,pi). 其中pi为圆周率初始值为0,终止值为pi,步长为pi/4. >> x=0:pi/4:pi x = 0 0.7854 1.5708 2.3562 3.1416 (3)x=(0:0.2:3) ', y=e-x)p.(*sin(x) 实验结果:x的初始值为0,终止值为3,步长为0.2.而函数y表示将x向量中的每一个数代入函数y=e%x)*sin(x)得到的函数值组成的向量. >> x=(0:0.2:3)', y=exp(-x).*sin(x)

x = 0.2000 0.4000 0.6000 0.8000 1.0000 1.2000 1.4000 1.6000 1.8000 2.0000 2.2000 2.4000 2.6000 2.8000 3.0000

0.1627 0.2610 0.3099 0.3223 0.3096 0.2807 0.2430 0.2018 0.1610 0.1231 0.0896 0.0613 0.0383 0.0204 0.0070 (4) k=linspace(-pi,pi,5), k=logspace(-3,-1,5) 实验结果:k=linspace(-pi,pi,5)产生的是初始值为-pi,终止值为 pi,元素总数为5的行向量,即k的步长为pi/2. k=logspace(-3,-1,5产生的是初始值为10八(-3),终止值为10八(-1),元素总数为5的列向量.

相关文档
相关文档 最新文档