Matlab学习记录24

书籍:Matlab实用教程

工具:Matlab2021a

电脑信息:Intel® Xeon® CPU E5-2603 v3 @ 1.60GHz

系统类型:64位操作系统,基于X64的处理器 windows10 专业版

第4章 Matlab的符号计算计算的可视化和GUI设计

4.7 图形用户界面设计

4.7.1 可视化的界面环境

4.7.2 创建选单

cpp 复制代码
>> guide



4.7.3 控件的使用

4.7.4 对象对齐工具、属性编辑器和对象浏览器



4.7.5 回调函数

4.7.6 应用举例

1、设计界面

2、设置控件属性

3、回调函数

cpp 复制代码
% --- Executes on selection change in popupmenu_zeta.
function popupmenu_zeta_Callback(hObject, eventdata, handles)
% hObject    handle to popupmenu_zeta (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Hints: contents = cellstr(get(hObject,'String')) returns popupmenu_zeta contents as cell array
%        contents{get(hObject,'Value')} returns selected item from popupmenu_zeta
val=get(hObject,'value')
switch val
    case 1
        handles.data=0
    case 2
       handles.data=0.3
    case 3
       handles.data=0.5
    case 4
       handles.data=0.707
end
guidata(hObject,handles)

% --- Executes during object creation, after setting all properties.
function popupmenu_zeta_CreateFcn(hObject, eventdata, handles)
% hObject    handle to popupmenu_zeta (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: popupmenu controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor','white');
end


% --- Executes on button press in pushbutton_red.
function pushbutton_red_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton_red (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
x=0:0.1:20;
zeta=handles.data
y=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt(1-zeta^2)*x+acos(zeta));
plot(x,y,'r')

% --- Executes on button press in pushbutton_blue.
function pushbutton_blue_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton_blue (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
x=0:0.1:20;
zeta=handles.data
y=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt(1-zeta^2)*x+acos(zeta));
plot(x,y,'b')



4.8 动画

4.8.1 以电影方式产生动画

cpp 复制代码
n=20;
for i=1:n
x=0:0.1:i;
y=1-1/sqrt(1-0.3^2)*exp(-0.3*x).*sin(sqrt(1-0.3^2)*x+acos(0.3));
plot(x,y)
axis([0,20,0,1.5])
M(i)=getframe;
end
movie(M,3)

4.8.2 以对象方式产生动画

cpp 复制代码
>> x=0:0.1:20;
y=1-1/sqrt(1-0.3^2)*exp(-0.3*x).*sin(sqrt(1-0.3^2)*x+acos(0.3));
plot(x,y)
h=line(0,0,'color','red','marker','.','markersize',40,'erasemode','xor')
for i=1:length(x)
	set(h,'xdata',x(i),'ydata',y(i));
	pause(0.005)
	drawnow
end
警告: EraseMode 属性不再受支持,而且在以后的版本中会出错。 

h = 

  Line - 属性:

              Color: [1 0 0]
          LineStyle: '-'
          LineWidth: 0.5000
             Marker: '.'
         MarkerSize: 40
    MarkerFaceColor: 'none'
              XData: 0
              YData: 0
              ZData: [1×0 double]

  显示 所有属性
相关推荐
踢球的打工仔1 天前
typescript-var和let作用域
前端·javascript·typescript
啥都不懂的小小白1 天前
JavaScript入门指南:从零开始掌握网页交互
开发语言·javascript·交互
半夏知半秋1 天前
rust学习-循环
开发语言·笔记·后端·学习·rust
Haooog1 天前
LangChain4j 学习
java·学习·大模型·langchain4j
星火开发设计1 天前
折半插入排序原理与C++实现详解
java·数据结构·c++·学习·算法·排序算法·知识
ghie90901 天前
MATLAB中实现基于高斯混合模型(GMM)的心电信号两级分类
开发语言·matlab·分类
欧阳天羲1 天前
ML工程师学习大纲
学习·算法·决策树
listhi5201 天前
基于MATLAB实现高斯混合模型(GMM)与马尔可夫模型结合
开发语言·matlab
Hcoco_me1 天前
大模型面试题43:从小白视角递进讲解大模型训练的梯度累加策略
人工智能·深度学习·学习·自然语言处理·transformer