5 MATLAB_GUI_使用按钮组(Button Group)绘制不同的正弦曲线

这篇文章介绍了如何在MATLAB中创建一个GUI界面,包含一个ButtonGroup控件和三个RadioButton。当选择不同的单选按钮时,坐标系会显示对应的函数曲线。通过定义回调函数,实现了单选按钮选择与坐标系图形更新的交互功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


  注:该笔记是学习b站上 MATLAB GUI教学视频而记录的笔记,笔记来源于本人。若有侵权,请联系本人删除,谢谢。若有错误,欢迎在评论区里指出。

一、实例效果

  如图所示,本次的GUI由两部分组成,左边是按钮组,右边是坐标系。按钮组中有3个单选按钮,当点中不同的按钮时,坐标系会显示不同的函数曲线。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、步骤

  1.先创建一个空白的GUI。

在这里插入图片描述

  2.创建一个按钮组(Button Group)控件。

在这里插入图片描述
在这里插入图片描述

  3. 再拖到三个单选按钮(Radio Button)到按钮组中,并对齐。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  对齐后的效果如下图:
在这里插入图片描述

  4. 修改三个单选按钮的属性。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  将下图这几个按钮调整下位置和大小,如后一张图所示。
在这里插入图片描述
在这里插入图片描述

  5. 保存GUI界面,运行一下程序看看得到的按钮组。发现按钮组只能有一个按钮被选中,回忆上一节的几个按钮的效果,可以说明未放在按钮组的多个按钮可以同时被选中,而 !! 放在按钮组的按钮最多选中一个 !!。

在这里插入图片描述
在这里插入图片描述

  6.创建一个坐标系。

在这里插入图片描述
  然后将坐标系与按钮组对齐。
在这里插入图片描述
在这里插入图片描述
  保存后,再运行一下看看效果。
在这里插入图片描述

  7.定义按钮组的回调函数,用来实现相应的动作。

在这里插入图片描述
  代码如下:

% --- Executes when selected object is changed in uibuttongroup1.
function uibuttongroup1_SelectionChangedFcn(hObject, eventdata, handles)
% hObject    handle to the selected object in uibuttongroup1 
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
x = 0:0.01:2*pi;  % 自变量的范围
current_Obj = get(eventdata.NewValue,'Tag');  % 得到当前被选中的单选按钮(Radio Button)的Tag,赋值给current_Obj
axes(handles.axes1);        %将GUI中的坐标系置为当前,让plot在该坐标系中进行绘画
switch current_Obj          %判断current_Obj,即可知道具体是哪一个单选按钮被选中
    case 'kj1'
        y=sin(x);
        plot(x,y);
    case 'kj2'
        y=cos(x);
        plot(x,y);
    case 'kj3'
        y=sin(x)+cos(x);
        plot(x,y);
end

  结合下图以及代码中的注释可理解代码的含义。
在这里插入图片描述

  8.保存,并运行程序,查看效果。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知乎云烟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值