1)建立GUI界面方法:
1.命令行键入:
guide
回车,新建空白图形界面,拖动需要工具进行布局。
2.直接新建. m文件 。这种方法整个框架都要自己写。
2)常用命令
movegui(gcf,'center');%使生成的界面每次跳出时位于屏幕正中。
clc;%清除命令行
cla;%清除图形
显示图形:(一般图形)
A=imread('图形名称.jpg'); %或者其他png/jpeg等格式图形,若图形与代码不在一个文件夹时需要加具体路径,如F:a/b/图形名称.jpg
imshow(A);%显示图形
显示gif:
[A,map]=imread('图片名称.gif', 'frames', 'all');
axes(handles.axes9);%放入指定位置
for i=1:size(A,4)
imshow(A(:,:,:,i),map);
pause(0.1);
end
显示透明图:
获取GUI输入文本框的值:
[I,map,alpha] = imread('图片名称.png');
h = imshow(I);
set(h,'AlphaData',alpha);
获取GUI输入文本框的值:
get(handles.edit1,'String');
赋值获取到的值到所需变量:
fs=(str2num(get(handles.edit4,'String')));%str2num()将字符值和数字变量相互转换。
获取表格中某一格的值:
table_data=get(handles.uitable1,'data');
type=table_data{1,1};%将表格第一行第一列的值赋给type;
清除指定位置的图形:
cla(handles.axes1);
或者:
cla(handles.axes1,'reset');
给可输入文本框限定类型:
function edit1_Callback(hObject, eventdata, handles)
str=get(handles.edit1,'String');
str1=str2num(str);
if isempty(str1)
errordlg('You must entry a number value','Bad Input','modal') %跳出一个对话框,提示只能输入数字
end
画图:
plot(x,y,'r-.','LineWidth',3);%线条颜色为red,为-.线,线宽3;
xlim([0 0.3]);%设置x轴范围为0-0.3;若需要xy同时设置可使用:axis([0 1e2 0 2e3]);
xlabel('f(Hz)');ylabel('PSD(dB)');%设置x/y轴标注
legend('1','2');%若有多条线,则可以给每条线进行标注
如果要一个figure画多个图,可用:
subplot(2,1,1);%将一个figure分割为两行一列
GUI中,若有不同的图需要同时显示,可以设置多个axes,和多个panel;
如果不确定画多少条线,又需要给每条线显示不同颜色和标注,可以选择:
如果不确定画多少条线,又需要给每条线显示不同颜色和标注,可以选择:
c=colormap(jet(Num)); %Num为线条数量,colormap为matlab中的函数,随机产生不同颜色
for i=1:Num
plot(x,y,'color',c(i,:),'LineWidth',1);hold on;%画Num条曲线,每次不同数据和颜色。
str{i}=char(['第',num2str(i),'条']);
end
legend(str);