Matlab的GUI界面(理解+徒手写)

matlab的组织构架其实和python是类似的,全都是基于对象的。
比如平时画图plot函数,画出的一个figure,就是一个Figure对象。每个对象都有自己的属性,通过get函数获取对象属性,set函数来修改对象属性。

gcf 返回当前Figure 对象的句柄值
gca 返回当前axes 对象的句柄值
gco 返回当前鼠标单击的句柄值,该对象可以是除root 对象外的任意图形对象,并且Matlab 会把当前图形对象的句柄值存放在Figure 的CurrentObject属性中。

下面做一个示例,纯粹手动写一个figure,sin函数,曲线每隔1s变一次颜色:

h = figure('Units', 'Normalized', ...
    'Position', [0.2 0.2 0.2 0.2],...
    'Menu', 'none');

ha = axes('Parent',h,  'Units', 'Normalized', ...
    'Position', [0.1 0.1 0.85 0.85]);
hl = line('Parent', ha, 'XData', [0:0.01:6], 'YData', sin([0:0.01:6]), 'Color', 'r');

cstring = 'gbkmy';
for k = 1:5
    set(hl, 'Color', cstring(k));
    pause(1);
end

哈哈,第一次录制gif格式动图,虽然csdn上显示会出错,但是还是贴上啦啦啦
在这里插入图片描述

下面是GUI常用属性
在这里插入图片描述
示例2:

hf = figure(...
    'Units', 'Normalized', ...
    'Menu', 'none',...
    'Color', 'w',...  %Color指背景颜色,w是白色,平时划线的时候不用白色,所以不熟
    'Position', [0.1 0.1 0.4 0.4]);
   
ha = axes(...
    'Parent',hf,...
    'Units', 'Normalized', ...
    'Position', [0.1 0.1 0.6 0.8], ...
    'NextPlot', 'Add', ... %就是hold on命令
    'Box', 'on');  %加上外框

hb1 = uicontrol(...
    'Style', 'pushbutton',...
    'Callback', 'try, delete(allchild(ha)); end', ...
    'String', 'clear', ...
    'Units', 'Normalized',...
     'Position', [0.78 0.25 0.15 0.1]);
 
 hb2 = uicontrol(...
    'Style', 'pushbutton',...
    'Callback', 'plot(sin([0: 0.01: 10]));', ...
    'String', 'sin', ...
    'Units', 'Normalized',...
     'Position', [0.78 0.45 0.15 0.1]);
 
 hb3 = uicontrol(...
    'Style', 'pushbutton',...
    'Callback', 'plot(cos([0: 0.01: 10]));', ...
    'String', 'cos', ...
    'Units', 'Normalized',...
     'Position', [0.78 0.65 0.15 0.1]);

在这里插入图片描述
总结:
matlab的GUI界面编辑比较简单,控件的定义使用只是更改类的属性即可。

学习链接

matlab的GUI的学习来源于bilibili网站的课程,感谢up主的分享,跟着up主一起徒手写GUI吧~
链接如下:
https://www.bilibili.com/video/BV1Sx411G7mT?from=search&seid=13985230084143289276

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值