matlab GUI總結
阿新 • • 發佈:2019-01-31
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
顯示透明圖:
[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);