菜鸟学Matlab(1)

Matlab博大精深,无比强悍,今天有发现了个秘密:LEGO MINSTORMS NXT

最近弄了些Matlab的程序,(图像处理的,ECG信号处理的),虽然都是些皮毛,而且有些还是在别人程序上改的,但遇到了很多问题,用到了很多函数,在这把它们在这总结一些。

 

1.这是一个Matlab初学者经常遇到的问题~网上也有很多的解决方法,比如

先复制到txt,再转帖到word~~

但是这些都不是从根本上解决问题的,本文提供一种一劳永逸的方法:

File–preference-fonts–custom–你选editor然后旁边选custom,然

后找你的字体吧。选宋体之类的都可以。

http://my.oschina.net/duluo180/blog/4658?from=rss

2.MATLAB 类型转换(转载)

int转string:int2str(m)

double转string:num2str(m)

在matlanb中help uint8,就可以看到matlab中常用的数据类型,如

double, single, datatypes, isinteger, uint16,

uint32, uint64, int8, int16, int32, int64,等,至于每种数据类型

在计算机中占几个字节,精度高的向精度低的转换会丢失哪些信息则没

有仔细研究。如果部考虑信息损失问题,类型转换就比较 简单了。假如

现在有一double型的变量i要转换成uint8型,则只需i=uint8(i)就行

了。datatypes没去研究过,应当跟一般的数值 类型有所区别,其它的

数值类型就以此类推,v=datatype(v)。

[http://hi.baidu.com/%D7%CF%E4%EC%CD%AC

%C3%CE/blog/item/96c611211f8c41ffd6cae242.html](http://hi.baidu.com/%D7%CF%E4%EC%CD%AC %C3%CE/blog/item/96c611211f8c41ffd6cae242.html)

3.Matlab关于pop-up menu的运用

在设置一个GUI中用到了pop-up menu弹起式菜单,该菜单中共

列有5个选项:即”A”,“B”,“C”,“D”,“E”。最开始时“D”和

“E”选项是不可用的,把他俩设置为灰色,只有先运行了“A”或“B”

或“C”之后,其得到的结果F,才可使“D”和“E”选项可用(也即F是

D,E中的参数)

做法:

那就可以可以在程序开始运行时,在pop-up menu里只设置三个

string:”A”(回车)“B”(回车)“C”(回车),当选择”A”(回车)“B”(

回车)“C”(回车)中的任意一个时,再向pop-up menu里面添加D和E项,

这样也能满足要求。

程序代码:

function popupmenu1_Callback(hObject, eventdata, handles)

global isexec

value=get(hObject,’value’);

str1=get(hObject,’string’);

switch value

case 1

%执行A

if isexec==0

str1=[str1;’”D”(回车)’;’”E”’];

set(hObject,’string’,str1);

isexc=1;

end

case 2

%执行B

if isexec==0

str1=[str1;’”D”(回车)’;’”E”’];

set(hObject,’string’,str1);

isexc=1;

end

case 3

%执行C

if isexec==0

str1=[str1;’”D”(回车)’;’”E”’];

set(hObject,’string’,str1);

isexc=1;

end

case 4

%执行D

msgbox(’D’);

case 5

%执行E

msgbox(’E’);

end

4.reshape 和matlab中的不等于

5.matlab简单交互式对话框

http://hi.baidu.com/einyboy/item/421cb94cdd1ca6e9a5c066a0

msgbox(’你要显示的内容’, ’对话框标题’);

matlab中inputdlg函数用户交互中使用方法如下:

answer = inputdlg(prompt,dlg_title,num_lines,defAns,options)

prompt:输入文本框的标签

dlg_title:对话框的标题

num_lines:输入文本框的行数

defAns:默认的文本框内容

options:一些可选的对话框选项

prompt={’Enter the matrix size for x^2:’,…

’Enter the colormap name:’};

name=’Input for Peaks function’;

numlines=1;

defaultanswer={’20’,’hsv’};

options.Resize=’on’;

options.WindowStyle=’normal’;

options.Interpreter=’tex’;

answer=inputdlg(prompt,name,numlines,defaultanswer,options);

返回为字符串,如果想转化为数字,可以是使用函数eval。

另外input函数也可以实现用户信息输入,不过是在命令行中输入,也很

简单、常用。

6.Matlab的GUI的全局变量

。。。。。。