當前位置:妙知谷 >

母嬰教育 >學習交流 >

Matlab利用guide進行計算、繪圖的界面編寫

Matlab利用guide進行計算、繪圖的界面編寫

使用Matlab的用户可以製作可視化的交互界面,發佈自己的界面程序。本例中使用guide進行一個簡單的實例演示,包括定義一個函數並繪製其圖像,函數參數的輸入等。

打開GUI引導界面

(01)在Matlab命令行窗口中輸入guide命令,打開如下界面

Matlab利用guide進行計算、繪圖的界面編寫
Matlab利用guide進行計算、繪圖的界面編寫 第2張

(02)單擊確定按鈕,新建一個空白模板。如圖所示

Matlab利用guide進行計算、繪圖的界面編寫 第3張

添加按鈕、更改屬性

(01)在新建的模板中,單擊鼠標左鍵將所需的按鈕拖動到繪圖區域,本例中定義函數y=a*sin(b*x),所以需要一個函數名稱顯示的靜態文本框,標註a和b的兩個靜態文本框,輸入a和b內容的兩個可編輯文本框,一個繪圖命令的按鈕,一個繪圖顯示區。操作結果如圖所示

Matlab利用guide進行計算、繪圖的界面編寫 第4張

(02)更改各控件屬性值:雙擊靜態文本框,彈出屬性對話框,更改String選項顯示名稱為y=a*sin(b*x),依次更改另外兩個靜態文本框以及按鈕的顯示,步驟及結果如圖

Matlab利用guide進行計算、繪圖的界面編寫 第5張
Matlab利用guide進行計算、繪圖的界面編寫 第6張

(03)為了編寫代碼時的記憶方便,更改a和b之後兩個可編輯文本框的顯示效果以及Tag標籤,操作過程以及最終的改變效果如下所示

Matlab利用guide進行計算、繪圖的界面編寫 第7張
Matlab利用guide進行計算、繪圖的界面編寫 第8張
Matlab利用guide進行計算、繪圖的界面編寫 第9張

代碼編寫

(01)接下來就是編寫回調函數CallBack的調用代碼。在需要編寫代碼的控件上單擊右鍵,彈出以下對話框,選擇CallBack,跳轉到代碼區,在edit_a的代碼區鍵入以下代碼a=str2num(get(hObject,'String'));%得到其中的字符串並將其轉換為數字if isempty(a) %判斷是否為數據,若否,則將其設置為0set(hObject,'String','0');endguidata(hObject,handles);%更新數據操作圖片以及鍵入結果如下

Matlab利用guide進行計算、繪圖的界面編寫 第10張
Matlab利用guide進行計算、繪圖的界面編寫 第11張
Matlab利用guide進行計算、繪圖的界面編寫 第12張

(02)同樣,對edit_b進行操作

Matlab利用guide進行計算、繪圖的界面編寫 第13張
Matlab利用guide進行計算、繪圖的界面編寫 第14張

(03)最後,編寫pushbutton即繪圖按鍵的代碼編寫鍵入以下代碼a=str2double(get(_a,'String'));%獲得數據ab=str2double(get(_b,'String'));%獲得數據bx=0:0.01:2*pi;%定義x範圍以及步長y=a*sin(b*x);%計算該函數y值plot(x,y);%繪圖並顯示在繪圖區

Matlab利用guide進行計算、繪圖的界面編寫 第15張

驗證

(01)運行該界面程序時,有兩種方式,如圖所示

Matlab利用guide進行計算、繪圖的界面編寫 第16張
Matlab利用guide進行計算、繪圖的界面編寫 第17張

(02)在文本框中分別輸入a為2,b為3,單擊繪圖按鈕,結果如圖

Matlab利用guide進行計算、繪圖的界面編寫 第18張

(03)在a的輸入框中輸入一個字母g,觀察運行結果可發現程序將其自動置為0,故可以防止非數字輸入時的程序錯誤

Matlab利用guide進行計算、繪圖的界面編寫 第19張

特別提示

打開guide引導界面時注意大小寫

如果對您有點幫助,請在左下角落裏點個贊,謝謝您!

  • 文章版權屬於文章作者所有,轉載請註明 https://miaozhigu.com/jy/jiaoliu/72ky8l.html