本文为matlab自学笔记的一部分,之所以学习matlab是因为其真的是人工智能无论是神经网络还是智能计算中日常使用的,非常重要的软件。也许最近其带来的一些负面消息对国内各个高校和业界影响很大。但是我们作为技术人员,更是要奋发努力,拼搏上进,学好技术,才能师夷长技以制夷,为中华之崛起而读书!
本文很多摘录自图书资料,不做任何商业用途,仅做技术分享,侵权删除!请不要放弃自己的理想和道路,加油!!
“参考书籍 《matlab 程序设计与综合应用》张德丰等著 感谢张老师的书籍,让我领略到matlab的便捷 《MATLAB技术大全》葛超等编著 感谢葛老师的书籍,让我领略到matlab的高效
x=[-pi:pi/20:pi];
y1=sin(x);
y2=cos(x);
figure(1); % 打开图形窗口
subplot(2,2,1);
plot(x,y1);
grid on; %开启网格线
title('Sin(x)'); % 加上标题
subplot(2,2,2);
plot(x,y2,'r:');
grid on;
title('Cos(x)');
subplot(2,2,3);
plot(x,y1,'-',x,y2,'--'); % 分别使用实线和虚线同时绘制出sin函数和cos函数
grid on;
title('Sin(x) and Cos(x)');
subplot(2,2,4);
plot(x,y1,'-',x,y1,'ko');
grid on;
title('Sin(x)');
t=0:.01:2*pi;
figure(1)
polar(t,sin(2*t).*cos(2*t), '--r')
x=0:0.01:pi/2;
figure(1)
plot(x,tan(x),'-yo') % ymax=tan(1.57) ,而其他数据都很小,结果将使图形难于进行观察和判断
figure(2)
plot(x,tan(x),'-bo')
axis([0, pi/2,0,5]) % 对坐标轴的范围进行控制就可得到满意的绘图结果
和创建菜单对象类似,同样可以通过基于函数命令行的编程方式和基于GUI的方式。
使用控制对象函数uicontrol是创建控制对象的基本方法,函数的调用格式如下:
MATLAB提供了11种控制对象,每一种控制对象对应于不同的特定目的。下面介绍这些控制对象的特征和实现的功能
MATLAB用户菜单对象是用户图形窗口的子对象,所以菜单设计总在某一个图形窗口中进行。MATLAB的图形窗口有自己的菜单栏。为了建立用户自己的菜单系统,可以先将图形窗口的,MenuBar属性设置为none,以取消图形窗口的菜单,然后建立用户自己的菜单。
用户菜单包括一级菜单(菜单条)和二级菜单,有时还可以继续建立子菜单,每一级菜单又包括若干菜单项。要建立用户菜单可用uimenu函数,因其调用方法不同,该函数可以用于建立一级菜单项和子菜单项。uimenu函数调用格式如下。
clf % 用于清除图形的命令
h_menu=uimenu('label','Option'); %产生顶层菜单项Option
h_sub1=uimenu(h_menu,'label','Axis on');%产生Axis on菜单项,由缺省设置而使能
h_sub2=uimenu(h_menu,'label','Axis off',...
'enable','off'); %产生Axis off菜单项,但失能
h_sub3=uimenu(h_menu,'label','Grid on',...
'separator','on','visible','on'); %产生与上分隔的Grid on菜单项,设置可见性,如果可见性是off则不可见
h_sub4=uimenu(h_menu,'label','Grid off',...
'visible','on'); %产生Grid off菜单项,设置可见性,如果可见性是off则不可见
clf % 用于清除图形的命令
h_menu=uimenu('label','Option'); %产生顶层菜单项Option
h_sub1=uimenu(h_menu,'label','Axis on');%产生Axis on菜单项,由缺省设置而使能
h_sub2=uimenu(h_menu,'label','Axis off',...
'enable','off'); %产生Axis off菜单项,但失能
h_sub3=uimenu(h_menu,'label','Grid on',...
'separator','on','visible','on'); %产生与上分隔的Grid on菜单项,设置可见性,如果可见性是off则不可见
h_sub4=uimenu(h_menu,'label','Grid off',...
'visible','on'); %产生Grid off菜单项,设置可见性,如果可见性是off则不可见
set(h_sub1,'callback',[... %选中Axis on菜单项后,产生回调操作
'axis on,',... %画坐标
'set(h_sub1,''enable'',''off''),',...%Axis on菜单项失能
'set(h_sub2,''enable'',''on''),',... %Axis off菜单项使能
'set(h_sub3,''visible'',''on''),',...%Grid on菜单项可见
'set(h_sub4,''visible'',''on''),']); %Grid off菜单项可见
set(h_sub2,'callback',[... %选中Axis off菜单项后,产生回调操作
'axis off,',... %使坐标消失
'set(h_sub1,''enable'',''on''),',... %Axis on菜单项使能
'set(h_sub2,''enable'',''off''),',... %Axis off菜单项失能
'set(h_sub3,''visible'',''off''),',... %Grid on菜单项不可见
'set(h_sub4,''visible'',''off''),']); %Grid off菜单项不可见
set(h_sub3,'callback',[... %选中Grid on菜单项后,产生回调
'grid on,',... %画坐标分格线
'set(h_sub3,''enable'',''off''),',... %Grid on菜单项失能
'set(h_sub4,''enable'',''on''),']); %Grid off菜单项使能
set(h_sub4,'callback',[... %选中Grid off菜单项,产生回调
'grid off,',... %消除坐标分格线
'set(h_sub3,''enable'',''on''),',... %Grid on菜单项使能
'set(h_sub4,''enable'',''off''),']); %Grid off菜单项失能