matlab 标注注释 坐标轴句柄 刻度

标签:
杂谈 |
分类: study与matlab |
过绘制二阶系统阶跃响应,演示MATLAB5.0以前版和以后版指令在标识图形上的差别。本例比较综合,涉及的指令知识较广,包括图形文字,箭头,字体标注,网格等等设置。假如能耐心读一下指令、实践操作一遍、再看一下例后的说明,定会有匪浅的收益。千万不要说感谢我的话,呵呵。
clf;t=6*pi*(0:100)/100; y=1-exp(-0.3*t).*cos(0.7*t);
tt=t(find(abs(y-1)>0.05)); ts=max(tt);
subplot(1,2,1), plot(t,y,'r-','LineWidth',3), grid on;
axis([0,6*pi,0.6,max(y)]);
title('y=1–exp(-alpha*t)*cos(omega*t)');
text(11,1.25,'alpha=0.3'); text(11,1.15,'omega=0.7');
hold on; plot(ts,0.95,'bo','MarkerSize',10); hold off
text(ts+1.5,0.95,['ts=' num2str(ts)]); xlabel('t
-->'), ylabel('y -->')
subplot(1,2,2), plot(t,y,'r-','LineWidth',3); grid on;
axis([-inf,6*pi,0.6,inf]); title('\it y = 1 - e^{
-\alphat}cos{\omegat}');
set(gca,'Xtick',[2*pi,4*pi,6*pi],'Ytick',[0.95,1,1.05,max(y)]);
text(13.5,1.2,'\fontsize{12}{\alpha}=0.3');
text(13.5,1.1,'\fontsize{12}{\omega}=0.7')
hold on; plot(ts,0.95,'bo','MarkerSize',10); hold off
cell_string{1}='\fontsize{12}\uparrow';
cell_string{2}='\fontsize{16} \fontname{隶书}镇定时间';
cell_string{3}='\fontsize{6} ';
cell_string{4}=['\fontsize{14}\rmt_{s} = ' num2str(ts)];
text(ts,0.85,cell_string); xlabel('\fontsize{14} \bft
\rightarrow'); ylabel('\fontsize{14} \bfy
\rightarrow')
http://blog.sina.com.cn/s/blog_4a4927c70100r95r.html
http://s8/middle/647aa009gc0310a348277&690标注注释
如果一个图片中我们画了n条曲线 但是我们只想加图例说明的只有其中的m条 (m<n)。
这个时候把我们想要标注的plot命令给个变量名 !例子如下 :
legend([h1,h2],S11dB',
其中我们只给出了 h1 和h2曲线的图例说明!
坐标系
1.一个图形必须有其定位系统,即坐标系;
2.在一个图形窗口中可以有多个坐标系,但只有一个当前的坐标系;
3.每个坐标系都有唯一的标识符,即句柄值;
4.当前坐标系句柄可以由MATLAB函数gca获得;
5.使某个句柄标识的坐标系成为当前坐标系,可用如下函数:axes(h) h为指
定坐标系句柄值.
6.一些有关坐标轴的函数:
1)定义坐标范围:一般MATLAB自动定义坐标范围,如用户认为设定的不
合适,可用:axis([Xmin, Xmax, Ymin, Ymax]) 来重新设定;
29
2)坐标轴控制:MATLAB的缺省方式是在绘图时,将所在的坐标系也画出
来,为隐去坐标系,可用axis off;axis on则显示坐标轴
(缺省值).
3)通常MATLAB的坐标系是长方形,长宽比例大约是4:3,为了得到一个
正方形的坐标系可用:axis square
4)坐标系横纵轴的比例是自动设置的,比例可能不一样,要得到相同比例
的坐标系,可用:axis equal
用鼠标点选屏幕上的点:ginput函数
格式为:[x, y, button]=ginput(n)
其中:n为所选择点的个数;x,y均为向量,x为所选n个点的横坐标;
y为所选n个点的纵坐标.
button为n维向量,是所选n个点所对应的鼠标键的标号:
1------左键;
2------中键;
3------右键.
可用不同的鼠标键来选点,以区别所选的点.
此语句可以放在绘图语句之后,它可在绘出的图形上操作,选择你所感
兴趣的点,如峰值点,达到稳态值的点等,给出点的坐标,可求出系统的
性能指标.
一.对图形对象的修改可以用下面函数:
1)set函数:用于设置句柄所指的图形对象的属性.
Set函数的格式为:
set(句柄, 属性名1, 属性值1, 属性名2, 属性值2, ……)
例:h=plot(x,y)
set(h, 'Color', [1,0,0])------将句柄所指曲线的颜色设为红色.
2)get函数:获取指定句柄的图形对象指定属性的当前值.
格式为:get(句柄, '属性名')
如: get(gca, 'Xcolor')------获得X轴的当前颜色属性值.
执行后可返回X轴的当前颜色属性值[0,0,0](黑色).
3)如果没有设置句柄,则可以使用下列函数获得:
gcf:获得当前图形窗口的句柄;
gca:获得当前坐标轴对象的句柄;
gco:获得当前对象的句柄.
如:
A.要对图形窗口的底色进行修改,可用:
set(gcf, 'Color', [1,1,1])------将图形窗口底色设为白色
B.要把当前X轴的颜色改为绿色,可用:
set(gca, 'Xcolor', [0,1,0])
40
C.还可对坐标轴的显示刻度进行定义:
t=-pi:pi/20:pi;
y=sin(t);
plot(t,y)
set(gca,'xtick',[-pi:pi/2:pi],'xticklabel',['-pi','-pi/2','0','pi/2','pi'])
-pi-pi/20pi/2pi
-1
-0.5
0
0.5
1
本例中用'xtick'属性设置x轴刻度的位置(从-pi~pi,间隔pi/2,共设置
5个点),用'xticklabel'来指定刻度的值,由于通常习惯于用角度度量三角函
数,因此重新设置['-pi','-pi/2','0','pi/2','pi']5个刻度值.
二.一些常用的属性如下:
1)Box属性:决定图形坐标轴是否为方框形式,选项为'on'(有方框),
'off'(无方框);
2)'ColorOrder'属性:设置多条曲线的颜色顺序,默认值为:
[1 1 0;1 0 1;0 1 1;1 0 0;0 1 0;0 0 1]
黄色 粉色 天蓝 红色 绿色 兰色
颜色向量还有:[1 1 1]------白色;[0 0 0]------黑色.
3)坐标轴方向属性:'Xdir','Ydir','Zdir',其选项为:
'normal'------正常
'reverse'------反向
4)坐标轴颜色和线型属性:'Xcolor','Ycolor','Zcolor'------ 轴颜色,
值为颜色向量
字体设置属性:'FontAngle'------ 设置字体角度,选项为:
41
'normal'------ 正常;
'italic'------ 斜体;
'oblique'------ 倾斜;
'FontName'------ 字体名称;
'FontSize'------ 字号大小
'FontWeight'------ 字体的轻重,选项为:'light',
'normal','bold'
MATLAB图形对象是指图形系统中最基本,最底层的单元,这些对象包括:
屏幕(Root),图形窗口(Figures),坐标轴(Axes),控件(Uicontrol),菜单(Uimenu),
线(Lines),块(Patches),面(Surface),图像(Images),文本(Text)等等.
根据各对象的相互关系,可以构成如下所示的树状层次:
Root
Figures
Axes Uicontrol Uimenu Uicontextmenu (对象菜单)
Images Line Patch Surface Text
对各种图形对象进行修改和控制,要使用MATLAB的图形对象句柄
(Handle).在MATLAB中,每个图形对象创立时,就被赋予了唯一的标识,这
个标识就是该对象的句柄.