一、簡介
matlabguiaxes繪圖是MATLAB圖形用戶界面(GUI)的一個重要組成部分。它允許用戶自定義繪圖、互動式修改界面和控制繪圖顯示。
二、創建matlabguiaxes圖形
創建matlabguiaxes圖形需要經歷以下步驟:
1. 打開MATLAB軟體,在命令窗口輸入命令「guide」。
Z = magic(5);
h = figure('Unit','Normalized','Position',[0.2 0.2 0.6 0.6]);
hz = uicontrol('Style','pushbutton',...
'String','Plot magic',...
'Unit','Normalized','Position',...
[0.1 0.1 0.3 0.2],'Callback',...
'pcolor(Z), shading flat; colormap(hot)');
2. 在彈出的新界面中選擇「Blank GUI (Default)」模板。
3. 在「GUIDE Quick Start」窗口中勾選「Create New Figure」並點擊「OK」按鈕。
4. 建立完畢後可以看到界面上會出現一張空白的matlabguiaxes繪圖板。
三、圖形設置
matlabguiaxes繪圖板具有多種設置項,可以在「Property Inspector」中進行設置,比如:
1. 設置圖形的標題、說明文本等。
set(handles.axes1,'Title','magic(5)');
set(handles.axes1,'XTickLabel','');
set(handles.axes1,'YTickLabel','');
set(handles.axes1,'XColor','w');
set(handles.axes1,'YColor','w');
2. 設置坐標軸的範圍大小。
xlim(handles.axes1,[0,6]);
ylim(handles.axes1,[0,6]);
3. 設置坐標軸的刻度標籤、字型大小和其它屬性。
set(gca,'FontName','Arial');
set(gca,'FontSize',12);
set(gca,'FontWeight','Bold');
set(gca,'XTick',[0:1:5]);
set(gca,'XTickLabel',['0';'1';'2';'3';'4';'5']);
set(gca,'YTick',[0:1:5]);
set(gca,'YTickLabel',['0';'1';'2';'3';'4';'5'])
四、繪製圖形
matlabguiaxes繪圖板可以通過以下方式繪製圖形:
1. 繪製線條。
x = [0,1,2,3,4,5];
y = [0,1,2,1,3,2];
plot(handles.axes1,x,y,'LineWidth',2);
2. 繪製散點圖。
x = [0,1,2,3,4,5];
y = [0,1,2,1,3,2];
plot(handles.axes1,x,y,'o','MarkerSize',10,'MarkerFaceColor','g','MarkerEdgeColor','r');
3. 繪製柱狀圖。
x = [1,2,3,4,5];
y = [3,1,4,1,5];
bar(handles.axes1,x,y);
4. 繪製餅圖。
x = [30,50,20];
labels = {'Pie Slice 1','Pie Slice 2','Pie Slice 3'};
pie(handles.axes1,x,labels);
五、添加控制項和事件
matlabguiaxes繪圖板容易添加控制項,例如:
1. 添加按鈕。
uicontrol(handles.figure1,'Style','pushbutton',...
'String','Plot',...
'Unit','Normalized','Position',...
[0.1 0.8 0.3 0.1],'Callback',...
'plot(handles.axes1,x,y,''LineWidth'',2);');
2. 添加滑塊。
uicontrol(handles.figure1,'Style','slider',...
'Unit','Normalized','Position',...
[0.1 0.6 0.3 0.1],'Min',1,'Max',10,'Value',2,...
'Callback','set(handles.text1,''String'',num2str(get(hObject,''Value'')))');
uicontrol(handles.figure1, 'Style', 'text', 'String', 'Slider', ...
'Unit', 'Normalized', 'Position', [0.1 0.7 0.2 0.1]);
matlabguiaxes繪圖板還能添加控制項事件,例如:
function pushbutton1_Callback(hObject, eventdata, handles)
x = linspace(-3*pi,3*pi,1000);
sz = get(handles.slider1,'Value');
if sz ~= 1
line(handles.axes1,x,sin(sz*x),'LineWidth',2);
else
plot(handles.axes1,x,sin(x),'LineWidth',2);
end
六、結束語
matlabguiaxes繪圖是MATLAB的一個非常強大的功能,它可以讓MATLAB用戶更加高效地完成繪圖任務。本文介紹了如何創建圖形、設置圖形、繪製圖形和添加控制項和事件,希望能對讀者有所幫助。
原創文章,作者:NRBS,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/147128.html