matlab中的set.docx_第1页
matlab中的set.docx_第2页
matlab中的set.docx_第3页
matlab中的set.docx_第4页
matlab中的set.docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB中的set函数(转载)1.MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值成为属性值。例如,LineStyle是曲线对象的一个属性名,它的值决定着线型,取值可以是- 、:、-.、-或none。2.属性的操作 set函数的调用格式为: set(句柄,属性名1,属性值1,属性名2,属性值2,)例子:clearx=0:0.2:12;y1=bessel(1,x);y2=bessel(2,x);y3=bessel(3,x);h=plot(x,y1,x,y2,x,y3);set(h,LineWidth,2;5;8) %set(h,LineWidth,2)=set(h,LineWidth,2),将所有线宽设置为2set(h,Color,r;g;b,LineStyle,-;:;-.) %设置颜色和线宽axis(0 12 -0.5 1) %设置坐标轴范围grid onX=0:1:12;Y=-0.5:0.25:1;set(gca,xtick,X,ytick,Y) %设置网格的显示格式,gca获取当前figure的句柄set(xlabel(Time),FontSize,12,Color,r)y=ylabel(Amplitude);set(y,FontSize,12,Color,g)legend(h,First,Second,Third) %添加图例title(Bessel Functions) %添加标题y,ix=min(y1); %找到y1的最小值以及改值的下标,赋给y和ixtext(x(ix),y,First Min rightarrow,HorizontalAlignment,right) %插入文本句柄式图形常用函数:(1)get(h)返回句柄值h所指定的图形对象的所有属性名称与相对应的属性值(2)a = get(h)返回由句柄值h所指定的图形对象的属性结构数组,并且该数组的字段名称就是该对象的属性名称。(3)a = get(0,factory)返回所有能由用户设置的属性的默认定义值。(4)a = get(0,FactoryObjectTypePropertyName1,FactoryObjectTypePropertyName2,.)返回指定对象类型指定的属性值,输入参数FactoryObjectTypePropertyName为一个关键词,由字符Factory与图形对象类型(如Figure)还有属性名称(如Color)组成。a = get(0,factoryFigureColor)返回Figure对象的Color属性值。(5)a = get(h,DefaultObjectTypePropertyName1,DefaultObjectTypePropertyName1,.)返回句柄值为h的对象指定属性的默认值。如“DefaultFigureColor”。(6)a = get(h,default)列出h对象的所有属性的默认属性值(7)a = set(h)返回句柄值h所指定的图形对象的所有属性名称对应的可设置属性值,a为结构数组,存储对象的属性名称,其字段值为相对应的属性值。属性值中用括起来的表示默认值。(8)set(h,a)使用指定的属性值来设置由句柄值h所指定的对象属性,a为结构数组,其字段名称为对象的属性名称,字段值为相对应的属性值。(9)a = set(0,factory)返回那些用户可以设置默认值的所有对象的属性,同时显示可设置的属性值。(10)a=set(0,FactoryObjectTypePropertyName)返回所有对象中指定的属性名称FactoryObjectTypePropertyName的所有可能的属性值。(11)a = set(h,属性名,属性值)设置句柄值为h的对象的与属性名对应的属性值。(12)set(h,DefaultObjectTypePropertyName1,DefaultObjectTypePropertyName2,.)对句柄值为h的对象设置特定属性名称的属性默认值。(13)H = findobj;返回Root对象与其所有子对象的句柄值(14)H = findobj(h);返回h变量的句柄值(15)H = findobj(属性名称,属性值);依据对象的属性名称和属性值找出匹配的对象句柄值。(16)H = findobj(ObjectHandles,属性名称,属性值);根据限定的对象列表找出与对象的属性名称和属性值匹配的对象句柄值(17)gcf返回当前Figure对象的句柄值gca返回当前axes对象的句柄值gco返回当前鼠标单击的句柄值,该对象可以是除root对象外的任意图形对象,并且Matlab会把当前图形对象的句柄值存放在Figure的CurrentObject属性中Figure对象的属性篇(1).是矩阵每个元素的幂乘,是数的幂乘。(2)set(handle)列出句柄值为handle的对象的所有属性get(handle)除列出上述属性外,还列出可以设置的属性reset(handle)将所有属性改为默认值delete(handle)删除句柄值为handle的图形对象(3)利用set(handle,属性名称)获得句柄值为handle的对象的属性名称下所有可设置的属性值set(gcf,units):得到 inches | centimeters | normalized | points | pixels | characters ,其中,大括号中是默认值(4)clf reset;将窗口关闭,并重新设置其属性为默认值。(5)Closerequestfcn,有效值为字符串或函数句柄(前加)当关闭绘图窗口或离开Matlab时,就会定义Closerequestfcn定义的函数(6)createfcn,当Matlab建立一个对象时(如为figure对象,即打开一个绘图窗口),就会触发createfcn所定义的callback程序。如set(0,defaultfigurecreatefcn,set(gcbo,integerhandle,off);即设置了根对象的默认值,使每次建立figure对象时,都会指定一个非整数的句柄值。(在用户未指定句柄值时)(7)将当前窗口中在键盘上按下的按键名显示出来。set(gcf,keypressfcn,get(gcf,currentcharacter)(8)color有效值为colorspeccolorspec表:RGB 简称110 y_yellow101 m_magenta011 c_cyan100 r_red010 g_green001 b_blue111 w_white000 k_black(9)linspace(a,b,c):a初始b结束c线性分段次数linspace(a,b)则默认100次(10)CurrentObject:有效值为图形对象句柄值:返回绘图窗口内当前被鼠标选取的对象的句柄值(11)currentPoint:有效值x-坐标,Y-坐标返回绘图窗口中最后单击鼠标的位置,用get(gcf,currentpoint)就会返回当前在窗口中单击鼠标的位置(12)DeleteFcn:有效值:字符串或函数句柄,删除对象(这里为figure)时会触发Deletefcn所定义的Callback程序。(13)Dockcontrols:有效值为on/off,默认值on,控制窗口的嵌入效果是否可用。(14)Hittest:有效值on/off,决定能否用鼠标选取对象为当前对象。(15)Integerhandle:有效值on/off,决定Figure对象句柄值的类型为整数或浮点小数。(16)Interruptible:有效值on/off,执行过程中需要中断程序而优先执行其他程序时要设该属性为on。即Interrupptible属性是用以控制当Callback执行时是否能被其他事件(如此时鼠标按下其他控制对象)而中断,on是会中断,off时会执行完当前Callback,再去执行其他Callback。(17)Keypressfcn:有效值为字串或函数句柄。当用户在figure窗口中按下键盘的任意键时,就会执行Keypressfcn所定义的Callback程序。figure(keypressfcn,fprintf(当前按下键盘上的%c键n,get(gcf,currentcharacter)在这个figure窗口中按下键盘上的按键时就会立即返回对应的字符,依据这个效果就可以决定当字符键被按下时所要执行的操作。当这个属性指定的值是一个函数句柄时,Matlab就会将这个函数视为一个结构,包含下列字段character(以当前键盘上按下的按键显示的字符来当作结果),modifier(包含一个或多个识别键盘上按下按键字符名称的细胞数组(如Ctrl,Alt,Shift等),key(显示被按下的键)。(18)WindowButtonDownFcn:有效值为字符串或函数句柄当鼠标在绘图窗口内按下鼠标任意键时,将触发WindowButtonDownFcn所定义的Callback以产生相对应的操作。(19)WindowButtonMotionFcn:有效值为字符串或函数句柄当鼠标在绘图窗口内按住鼠标任意键移动,将触发WindowButtonMotionFcn所定义的Callback以产生相对应的操作。(20)WindowButtonUpFcn:有效值为字符串或函数句柄当鼠标在绘图窗口内释放鼠标任意键时,将触发WindowButtonUpFcn所定义的Callback以产生相对应的操作。(21)CurrentAxes有效值为当前坐标轴的句柄值,返回当前的坐标轴句柄值。假设某坐标轴句柄值为a_h,可以使用axes(a_h)或set(gcf,currentaxes,a_h)这两种方式,制定句柄值为a_h的坐标轴为当前坐标轴。(22)CurrentCharacter:有效值为任意字符,返回用户在绘图窗口中最后输入的一个字符,即刚在键盘上按下的字符键将存储到Currentcharacter中,一般于Keyppressfcn合用。(23)Currentobject有效值为图形对象的句柄值,返回绘图窗口内当前被鼠标选取的对象的句柄值。(24)有效值为两元素的向量,X坐标,Y坐标返回绘图窗口中最后单击鼠标的位置,与Windowbuttonmotionfcn,Windowbuttonupfcn合用。使用get(gcf,currentpoint)就会返回当前在窗口中单击鼠标的位置。Axes对象的属性(1)title(new,color,r);给坐标轴命名为new,红色title(this title,has 2 );命名为两行的标题(2)Units:有效值为pixels/normalized/inches/centimeters/points/characters决定各种位置属性的度量单位,相对于窗口左下角为基准。当设置为Pixels时,以像素为单位;当设置为normalized时,以坐标为单位,屏幕的左下角为0,0,右上角为1.0,1.0。(3)grid on:在图像中显示网格。(4)children:控制axes对象的子对象,即imagelightlinepatchrectanglesurface和text等对象,可通过get(gca,children)来返回当前坐标轴的子对象构成的句柄值向量。(5)字体属性:Fontangle字体角度(正常normal或斜体italic/oblique)Fontname字体名称fontsize字体大小(单位由Fontunits决定)fontunits字体单位(points/normalized/inches/centimeters/pixels)fontweight字体粗细(normal/bold/light/demi)gridlinestyle决定坐标轴网格线的样式,-为实线- -为虚线:为点线-.为点虚线plot(1:10);grid on;set(gca,gridlinestyle,-.);将当前坐标轴显示的网格线为点-虚线(6)linewidth 定义X,Y和Z轴的轴线宽度(以点单位定义)(7)NextPlot:有效值为add|replace|replacechildren,默认为replaceadd表示使用当前的坐标轴,把新的图形对象加到此坐标轴中是一般保留的做法,replace表示重新设置坐标轴的所有属性(Position除外),也就是在绘图前会删除当前坐标轴和它的子对象。replacechildren表示移除当前坐标轴中所有子对象,但不重新设置坐标轴的所有属性(8)Outerposition决定坐标轴外边界的位置。由位置向量left,bottom,width,height组成,其中left,bottom表示相对于绘图窗口左下角的位置,width,height表示区域尺寸,默认为0 0 1 1(9)Position由位置向量left,bottom,width,height组成,决定坐标轴位置(10)Tag定义本坐标轴的卷展栏,因为每一个对象都有自己唯一的识别码即tag,以方便findobj函数查找坐标轴句柄值。(11)visible决定坐标轴是否可见(12)set(gca,xgrid,on)绘制X轴垂直网格线set(gca,gridlinestyle,:,linewidth,3)设置网格线线条类型和宽度set(gca,box,on)将图轴方框绘制出来(13)set(gca,xscale,linear);将X轴刻度设为线性set(gca,yscale,log);将Y轴刻度设为对数(14)disp()显示一个数组,但不显示其数组名称disp( Corn Oats Hay)disp(rand(5,3)which results inCorn Oats Hay0.2113 0.8474 0.27490.0820 0.4524 0.88070.7599 0.8075 0.65380.0087 0.4832 0.48990.8096 0.6135 0.7741Pause:pause, by itself, causes M-files to stop and wait for you to press any key before continuing.实例:plot(1:10);set(gca,yscale,log);disp(请按下Enter键);pauseset(gca,Yscale,linear);本例是说按下Enter键将Y轴刻度由对数改为线性。(16)Xtick,Ytick,Ztick:控制X,Y,Z轴坐标刻度记号的位置,即控制坐标轴上刻度记号的位置以及每隔多少值会到下一个刻度记号的位置,同时还需要配合Xticklabel、Yticklabel、Zticklabel属性来调整。详细见例程。以下设置方式相同:set(gca,Xticklabel,1;10;100)set(gca,Xticklabel,1|10|100)set(gca,Xticklabel,1;10;100)set(gca,Xticklabel,1 ;10 ;100)(17)Findobj:查找Line对象当用户建立一个线对象时,就会触发Createfcn所定义的Callback产生相对应的操作;同样,若删除一个线对象时,就会触发DeleteFcn所定义的Callback产生相对应的操作。以下程序建立一个线对象,并设置DeleteFcn为一个问题对话框,当删除该线对象时,就会显示其问题对话框来询问用户。(1) clipping:有效值为on/off,默认值为on设置坐标轴土筐是否可以剪辑,如果设为off,则绘制线对象时可超出坐标轴的图框。(2)Linewidth:有效值为纯量(与向量相对,只有大小而无方向),点为单位。(3)Marker:有效值为字符,决定Line对象的记号类型,有+,o,*,.,x,s,d,等(4)Markersize:有效值为纯量,单位为点,Marker的大小。(5)UIcontextmenu:有效值为uicontextmenu对象的句柄值,定义与线对象相关联的uicontextmenu菜单,因此当用户将该线对象的属性UicontextMenu设置为相关联的uicontextmenu对象的Tag名称时,uicontextmenu就可以在该线对象上单击鼠标右键来显示uicontextmenu菜单。(6)Tag:有效值为字符串,定义改线对象的卷展栏(即标记)(7)Type:有效值为字符串(只读),此处为line字符串。(8)Xdata,Ydata,Zdata:有效值为坐标数组,指定产生线条的数据点,若为2D环境则Xdata、Ydata需要有相同数目的数据,而Zdata为空矩阵;3D环境则Xdata,Ydata,Zdata三者都需要有相同数目的数据。例:x=0:5,y=x+10;line(xdata,x,ydata,y);Patch对象patch函数不想其他高级区域建立函数(fill和area),只是简单地将patch对象添加到当前坐标轴中而已。使用:patch(X,Y,C)在当前的坐标轴中添加二维填充的patch对象,X和Y用以定义patch对象顶点的位置,若X,Y为矩阵,则Matlab按每一行的元素来产生多个多边形。例:x = 0 0;0 1;1 1;y = 1 1;2 2;2 1;z = 1 1;1 1;1 1;(x(1,1),y(1,1),z(1,1)为第一个面的第一个顶点,x(2,1),y(2,1),z(2,1)为第一个面的第二个顶点,以此类推)tcolor(1,1,1:3) = 1 1 1;tcolor(1,2,1:3) = .7 .7 .7;patch(x,y,z,tcolor);(tcolor是一个1*2*3的三维矩阵)Surface对象surface可以建立一个surface对象,surface是由矩阵数据所在的列索引值为X坐标,而行索引值为Y坐标,并且矩阵的每个元素值为Z坐标。image对象image(C)将矩阵C当作一个图像来显示,C的每一个元素定义一个图像中矩阵线段的颜色。image(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论