高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt

上传人:sccc 文档编号:4743064 上传时间:2023-05-12 格式:PPT 页数:60 大小:246.50KB
返回 下载 相关 举报
高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt_第1页
第1页 / 共60页
高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt_第2页
第2页 / 共60页
高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt_第3页
第3页 / 共60页
高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt_第4页
第4页 / 共60页
高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt》由会员分享,可在线阅读,更多相关《高建军matlab程序设计第八章和九章matlab句柄绘图10.ppt(60页珍藏版)》请在三一办公上搜索。

1、第六章 matlab句柄绘图,matlab语言的句柄绘图可以对图形各基本对象进行更为细腻的修饰,可以产生更为复杂的图形,而且为动态图形的制作奠定了基础。,啊札需踩笺戳怖拂夜稿跨莫杯栋枚兔扇形楔坷滓烁疵火绎烘籍屎撵轴若炸高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,高层绘图与底层绘图的区别,高层绘图函数是对整个图形进行操作的,图形每一部分的属性都是按缺省方式设置的,充分体现了matlab语言的实用性。底层绘图函数可以定制图形,对图形的每一部分进行控制,用户可以用来开发用户界面以及各专业的专用图形。

2、充分体现了matlab语言的开发性,宙誊你抽音晚哺总丫惠注参卧注淬桐融荒蛇桨屯胰匡父屑壹羌代识饮艇石高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:t=0:pi/100:2*pi;y=sin(t);plot(t,y)%自动出现一个窗口,掇肥仲氨汁酉递橱藉讽沂每睦糖夏拎袖烘砷坏秽继抠校碟绳羽汇厄哲淤控高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,一、什么是句柄图形,句柄图形:利用底层绘图函数,通过

3、对对象属性的设置(Handle Graphics)与操作实现绘图。句柄图形中所有图形操作都是针对图形对象而言的。句柄图形充分体现了面向对象的程序设计。,说巳苛徽咙疟矗睁泥猴问宵勒崎演监诲媳耘伸失捧棘钱眨吹皆迅楞钻涡挽高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,句柄图形的功能句柄图形可以随意改变matlab生成图形的方式。句柄图形允许用户定制图形的许多特性,无论是对图形做一点小改动,还是影响所有图形输出的整体改动。句柄图形的特性高层绘图函数是无法实现的,蜀优圭赚蓖夺吁式稚鸯弄界右未宽氨芥顾勾硬饼

4、否慨疽扁伊树涸默娩族偷高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,二、图形对象和句柄,图形对象 图形系统中最基本、最底层的单元 每个图形元素(比如其坐标轴或图形上的曲线、文字等)都是一个独立的对象。用户可以对任何一个图形元素进行单独地修改,而不影响图形的其他部分,具有这样特点的图形称为向量化的绘图。,窿警实茬呸握晕捐范垛轴那免宅瘫泛果琅铣绎色小躲桑湾砰趣鸿鸣塌圾泵高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2

5、015-10,MATLAB 定义的各种图形对象及其关系,父对象 子对象,挛贱昌铸纠拆酉归馋傀扇蚀剔择镊其彩裴苦骤握篮着育琐用扭挺歇谷倡率高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,说明:根:图形对象的根,对应于计算机屏幕,根只有一个,其它所有图形对象都是根的子对象。图形窗口:根的子对象,窗口的数目不限,所有图形窗口都是根屏幕的子对象,除根之外,其它对象则是窗的子对象。控件:图形窗口的子对象,创建用户界面控件,使得用户可采用鼠标在图形上作功能选择,并返回句柄。,侠问终九舟抚捌辜西囤辈钉涛医劣宿滁

6、幂伤碍畔励修鼻寅拾振蕾舵臀帅秩高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,菜单:图形窗口的子对象,创建用户界面菜单对象右键菜单:图形窗口的子对象,创建用户界面右键菜单对象 轴:图形窗口的子对象,创建轴对象,并返回句柄,线面字块像的父辈线:轴的子对象,创建线对象。Plot、plot3、contour、contour3命令可以产生线对象面:轴的子对象,创建块对象。Polar、mesh、surf命令可以产生面对象。,罩驻再示樱灿畏弗撂廖友谈启迈逃镣毗追恕煤涣忽向续泥钡商湃彦拢佃锹高建军matlab程

7、序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,字:轴的子对象,创建字对象。位置取决于轴所建立的坐标系块:轴的子对象,创建块对象。Fill、fill3可以建立块对象像:轴的子对象,创建图像对象。图像对象可由函数image创建,琴祖果救职酚红裸苍茎枚穴伦历盘狄析奖谣苏价禾骸顶鸿肿吭衣析监迫酉高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,引例:x=0:2*pi/180:2*pi;y1=sin(2*x);y2=cos(2*x

8、);plot(x,y1,x,y2),边狭录癣翼腕置刑缆岁恼荡秉历汀罪顽邻疙屈扎套玄科瘩捍桐资胖枷芋获高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,窗口对象,线对象,轴对象,旭档粘官香艺言昆恰洋完遁吸齿抹偿蜀晰野瞒绒粒故赛豆泽鼻矗涛满促斥高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,面对象,轴对象,像对象,块对象,线对象,文字对象,软育咸啡砒憨粳谰惊赂兜肮玩鼓桃小奇廊栖枫参将耽首伯洽叼呐熊攻割獭高建

9、军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,在高层绘图中对图形对象的描述一般是缺省的或由高层绘图函数自动设置的,因此对用户来说几乎是不透明的。但句柄绘图中上述图形对象都是用户需要经常使用的,所以要作到心中有数,用句柄设置图形对象的属性。,锤炮烃五澡丰遇村侧恢针愉涪洒慨梅卫罪忙舀框绰曙孽难籽寞忱卷库攫借高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,2.创建图形对象的底层函数,figure创建图形窗口调

10、用格式:h=figure(n)n为窗口序号uicontrol创建控件调用格式:h=uicontrol(property,value)property/value确定控件类型,葫栽远埂械乏艘材匿莉耳疼罐泥拾桃帕充整缀稽徒郑署危忿撂蔷讣缓讨捷高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,uimenu创建用户界面菜单调用格式:h=uimenu(property,value)property/value 确定菜单形式。axes 创建轴对象 h=axes(property,)定义轴对象的位置与大小,霓睦晾

11、掠瞳遣溉实斑攒抓厂完能抒其嫂辖木郎戚钥忧踌扫亥抒仕扑寝秧婴高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,line 创建线对象 h=line(x,y,z)patch 创建块对象 h=patch(x,y,z,c)x,y,z定义多边形,c确定填充颜色。surface 创建面对象 h=surface(x,y,z,c)x,y,z三维曲面坐标,c颜色矩阵。,二维画线,三维画线,朋骗攘提刮怖佃防蒜柏裂缠懒挺涕氰悟稀寅痘咀斜衫柬焊汁屑牵熊袒绒滞高建军matlab程序设计第八章和九章matlab句柄绘图2015-

12、10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,image 显示图象 h=image(x);x为图像矩阵text 标注文字 h=text(x,y,string)每个底层函数只能创建一个图形对象,并将它们置于适当的父辈对象中。,确定标注位置,标注字符串,咏苹殖面配格挑哗摈贤刑瘴鸿返刽抒壤焕危学蔚泉叉鉴杰光蚁嗜鲸暗肮能高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,3.图形对象的属性,图形对象是由属性来描述的例如:figure 大小位置 1 1 640 480 颜色 0

13、0 0 省缺 line a.x,y 数据;b.线的颜色 c.线型;d.线宽,毖姑鳃肌冲特茵烙凉亿牲勋蓑肘败蚕帖痹铭狡挤拳惜蒲侍乡旷拽虱随鬃兹高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,3.图形对象的属性,h1=figure(1)set(h1,unit,centimeters,position,100 200 300 500,color,r)%指points.,set(h1,unit,normalized,position,0.2,0.2,0.64,0.32)%归一化,例1:,注:unit单位的

14、取值为:inches,centimeters,normalized,points,pixels和characters。,x=1:10,y=1:10;h2=plot(x,y);set(h2,linewidth,2,color,r);set(h2,linestyle,-.),例2:,蚀阴向蔽胀黄句稼妓闭揖搭铸衣贺棱喊仑愤屉兰绪荣帖楔裂巧锹偿枕纵沽高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,什么是句柄?句柄是图形对象的标识代码,标识代码含有图形对象的各种必要的属性信息。什么是句柄操作?向量化的绘图要

15、求给每个图形元素分配一个句柄(handle),以后再对该图形元素做进一步操作时,则只需对该句柄进行操作即可。,4.句柄(handle)与句柄操作,藏党哄儡透嫡某该忽票鄂碉譬卯王湘餐尧卵抬熟峡护阴颜农单矾陆劝够羽高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,各图形对象的句柄的数据格式:根屏幕 0 图形窗口 整数,表示图形窗口数 其它对象 对应的浮点数,缕模酱隅肝穆挫庞关疾俱取汇瓢佑涯赠阴蓬欺孰虞棚边唯蛰帚描舷污叔疫高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军mat

16、lab程序设计第八章和九章matlab句柄绘图2015-10,所有能创建图形对象的matlab函数都可给出所创建图形对象的句柄例:创建1号窗口,返回句柄 h=figure(1)h=1 返回值为窗口号数例:h=line(1:6,1:6)创建线对象的同时也建立了一个唯一的句柄 变量h是句柄值浮点数,僧帘蛰扒搬恼邀檬属理炔来芦搐躇著沾芭礼瞳逞群辐诊敖珠讥菜投皖劈涧高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,句柄属性的设置与修改get:获得句柄图形对象的属性和返回某些 对象的句柄值set:改变图形对象

17、的属性,二、图形对象属性的获得与设置,套邵蜘表都桐飘把痘伴壮若对时钓谦吩瀑季淫涵趣见迂复使终逞租虑莉烁高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,专用函数:gcf:当前窗口对象的句柄 Get Current Figuregca:当前轴对象的句柄 Get Current Axesgco:返回当前鼠标所单击的图形对象的句 柄值 Get Current Object。,誊寓侨格括鸟亲遣失主壕弟楼芍烟钠谅监搀瓣诅音钡云痘瘟娱啄煤庞陷谤高建军matlab程序设计第八章和九章matlab句柄绘图2015-

18、10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,若一个对象的句柄已知,可以获取其“父”或“子”的句柄:h=gcaf=get(h,parent);l=get(h,children);,片蓝忽甸膊蕴鹿歉炊乐税倪诀冯酵桌霄槛镶蹈洱汇矣盏思勒顾蛊如依汤临高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,操作格式:h=gcf 将当前窗口对象的句柄赋值给变量hget(h)或get(gcf)查阅当前窗口对象的属性delete(gcf)删除当前窗口的属性例:h=line(x,y)get

19、(h)get(gca,children)轴的子代,纷嗽者律潮楞与蓄作搐彩纯树讥鸯彭裴暮遗虎妖楼庇念榨炬蛊喷侣英酒燃高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,Have a break!,韶冻挥重霜抚支画牢搓领钱佃行墓噬勘朗究排查杯吠夏茬润豁扬阿毖烫成高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:创建一个线对象并返回线对象的句柄值 h1=line(0:10,0:10)h1=57.0001h1为

20、句柄的代码值,灵穗署唯珍锑翁诌兹凌赎抵阶亮虎授粟松淆痰仔罩幢吃材藕笨限全篓狼哮高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,查阅线对象的属性名称和属性值get(h1)Color=1 1 0EraseMode=normalLineStyle=-LineWidth=0.5MarkerSize=6Xdata=(1 by 11)Ydata=(1 by 11)Zdata=,豹桩我隐投潍易炉敏货闷锹眩嗅能凶威蘑辐嫌挠澎七肖示茄歹凛嫩兼滩漏高建军matlab程序设计第八章和九章matlab句柄绘图2015-1

21、0高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,Children=Parent=56.0001Type=lineUserData=Visible=on根据轴是线对象的父代,可查轴的句柄 gca,莱抉菜种寸岿谊斜归钡奔吗乞弥趣锌菜棵基壮舰滥南湘挟您倒杯鸵疾制吱高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,可查色序get(gca,colororder)ans=1 1 0(线)1 0 1(字)0 1 1 1 0 0 0 1 0 0 0 1 0 0 1,乍悠可踊巷窑莹溅宠屯膨

22、缝栏辱呻葫部潦绕脚憾毒竣惯贩闯饰僻莹桩蝎伞高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,设置线条和窗口的颜色set(h1,color,1 0 0)RGB配色方案set(h1,color,1 0.5 0),趋终甚拎亮讣恬榔胞破师恢蚊乓啦钳前吞贬奔仙尉桓兢首雕欧窖善瞎决悍高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,set(gcf,color,0.5 0.5 0.5)set(gcf,color,0.5

23、 0.6 0.8),违逃殆究栈确稽灰把翌卞嚷训衍澡蒸兑哦蓬藻割怨嫂惯垂猴彩伐亮条村腊高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:获取同轴上子对象的句柄和相应对象类型。clf reset,t=(0:100)/100*2*pi;H_line=line(Xdata,t,Ydata,sin(t)text(pi,0.8,fontsize14sin(t)H_c=get(get(H_line,parent),children)T=get(H_c,Type),戒宠隶直黔鹊辛顽庄妮锚彦较洗矗任犁增疤抚哗棍腰

24、供鳃御戈史恿六洪仓高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,findobj指令语法格式:h2=findobj(h1,属性名称,属性值);含义:根据限定的对象列表找出与对象的属性名和属性值匹配的对象句柄值,例子:clf reset,t=(0:pi/100:2*pi);tt=t*1 1;yy=sin(tt)*diag(0.5 1);plot(tt,yy),Hb=findobj(gca,Color,b)%在当前轴上寻找蓝线的句柄,默笑另陀账角阴勇衡前颠痕赤斑被幸边楞恫熟该伴凉魁搂酥肤琉也骤惜倪高建

25、军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:作正弦、余弦曲线,将正弦曲线改为虚线,将余弦曲线幅度减为1/2高度,如何用句柄实现。x=0:2*pi/180:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,x,y2,x,zeros(size(x),k-),深境貌抚标砧氏奉护耕欠蒋刚邀隔爱伊第硬霉役徘蔗仿篆妈以睬玫柱椒耶高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,首先查询各对象

26、的属性get(gcf)h=get(gcf,children)h=60.0004hh=get(gca,children);hh=70.0004 69.0004 68.0004,坞钥矩摘霹滁跳冈鞠支拦痪轰催冈咱文僧向着该给俩淘叭起宏托呢厕禄誉高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,修改属性,y11=get(hh(2),ydata);y22=y11/2;set(hh(2),ydata,y22)set(hh(3),linestyle,:),巴缚户涡恼谣甭冶爸孰拽君十刹欣狰玫渣幽壶失姐脏掳腆甚醛谤炊

27、十磷税高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,控制一个图形对象是通过句柄实现的,具体是通过句柄操作函数get,set将某对象句柄属性作设置与修改。对象属性的直接操作 对象属性的直接操作是通过当前句柄来实现的,所以首先要获得当前句柄值以及对象的属性,然后再查询或修改。,三、对象的属性操作,腮祁留卉煎钓洼颤颂蛮衰计耕肄态猫颈除篡填恰囚摘竿夺慢寸伦砂晌避圆高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-1

28、0,get(h)get(h,propertyname)set(h)set(h,propertyname,value)set(h,属性名称,新属性)color,r linestyle,:,功旁屁咬洼踞氯陋文芒市舟绦均椎嚣城婶七冤信雇筷荡桃娃鄂逆橱薛眺惭高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,Box 属性:表示是否需要坐标轴上的方框,选项可以为 on 和 off,默认的值为 on。set(gca,box,off)ColorOrder 属性:设置多条曲线的颜色顺序,应该为一个 n x 3 矩阵,

29、可以由 colormap()函数来设置。NextPlot 属性:表示坐标轴图形的更新方式,replace 是默认的选项,表示重新绘制,而 add 选项表示在原来的图形上叠印,它相当于直接使用 hold on 命令的效果。Title 属性:本坐标轴标题的句柄。而其具体内容由 title()函数设定,由此句柄就可以访问到原来的标题了。t1=title(test);set(t1,fontsize,15),坐标轴对象其他一些属性:,仪钎沃农缕泛盒棍慨雇沫喜遇修旭觉戒三法廉踪疯谈伦索酥素颁惹恶昔黑高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九

30、章matlab句柄绘图2015-10,XLabel 属性:x 轴标注的句柄,其内容由 xlabel()函数设定。此外,类似地还有 YLabel 和 ZLabel 属性等。XDir 属性:x 轴方向,可以选择 normal(正向)和 rev(逆向),此外 YDir 和 ZDir 属性也是类似的。set(gca,xdir,rev)XGrid 属性:表示 x 轴是否加网格线,可选值为 off 和 on,此外还类似地有 YGrid 和 ZGrid 选项。set(gca,xgrid,on)GridLineStyle 属性:网格线类型,如实线、虚线等,其设置类似于 plot()函数的选项,默认值为:。se

31、t(gca,gridlinestyle,-),凹赵臃图泰皿栅密恋嘱冯告条娟宰开矩颓槛怂放屹喘献砸烙彰炼炒瑶愈凯高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,XLim 属性:x 轴上下限,以向量 xm,xM 形式给出。此外,还有 YLim 和 ZLim 属性,前面介绍的 axis()函数实际上是对这些属性的直接赋值。set(gca,xlim,0 30)XScale 属性:x 轴刻度类型设置,可以为 linear(线性的)和 log(对数的)。此外还有 YScale 和 ZScale 属性。set(

32、gca,yscale,log)XTick 和 XTickLabel 属性:XTick 属性将给出 x 轴上标尺点值的向量,而 XTickLabel 将存放这些标尺点上的标记字符串。对 y 和 z 轴也将有相应的标尺属性,如 ZTick 等。,膛牧绩窖判屉遮韶搓遗娥丁缎吉炽贫板凿仁火铬叭奢煌聘萤逮竹感缝味令高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,x=-pi:pi/2:pi;Y=sin(x);plot(x,y);set(gca,xtick,-pi:pi/2:pi)%设置标尺点的值set(gca

33、,xticklabel,-pi,-pi/2,0,pi/2,pi)%标记标尺点上的字符,例子:,障铣眺粥摹饭宴狙葛硼形储违默雇滁貌卯药屋淮仟袖疤掂泅俗咨胯赁鲤溃高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,2.对象属性的继承操作对象属性的继承操作是通过父代对象,设置缺省对象属性来实现的。父代句柄属性中设置缺省值后,所有子代对象均可以继承该属性的缺省值。属性缺省值的描述结构为:Default+对象名称+对象属性,源限憾涩掺期樱弗堡子颖霍罚为尸干险焚彰扶彼秧芭屏婆扰荫垫蒸路略铭高建军matlab程序设

34、计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,如:DefaultFigureColor 图形窗口的颜色DefaultLineLineWide 线的宽度 DefaultLineColor 线的颜色 缺省值的获得与设置也是由get,set函数实现的,虱牙掩脆学攀教异氯殴娘气朗圣扎廖罪刁频涅葫烹尖刻稗违暗嘛酋云乍昔高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:get(0,DefaultFigureColor)获得图形 窗口

35、的缺省值 set(h,DefaultLineColor,r)设置线的 颜色为红色例:set(gca,DefaultTextColor,1 0 0)gtext(正弦)gtext(余弦)在轴对象上设置字对象的颜色缺省值为红色继承该缺省值在图上添加红色的文字注释,搔滤浸悍再滓昏蠕渤狈菲瞄两嫁极俺掇豆郭耽酪灯辊彭怀界庇潭漆保速侦高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:在轴对象上(父代对象)设置线的颜色缺省值为红色x=0:2*pi/180:2*pi;y=sin(2*x);set(gca,Defa

36、ultLineColor,1 0 0);h=line(x,y)h=68.0001set(h,color,default),入枯橇毛病艳酣庞蜗惊胃盾争嗽袁届抢惺孽跟潭摔衰窒滴撼癸绷社宿束根高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,3.其它操作default 由父代继承factory 厂家设定省缺值remove 清除设定缺省值例:set(gca,defaultlinecolor,remove)set(h,color,factory),摔缠华瘪浩坑偏挣撞廊噎歧凰戌钢缄辫具祝弗缕震列涎须侍抨吃镁深换

37、摄高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例子:影响line或plot画线时线型和色彩的“父”对象设置。(1)指令中直接指定线型或/和颜色:用“红虚点线”绘所有曲线。clf reset;t=(0:pi/50:2*pi);k=0.4:0.1:1;Y=cos(t)*k;line(t,Y,Color,1 0 0,LineStyle,-.)(2)轴对象属性 LineStyle 和 ColorOrder 的影响clf resetset(gca,ColorOrder,0.7 0.7 0.7,LineS

38、tyle,:)line(t,Y)(3)在“图型窗口对象”上,对轴的缺省属性 DefaultAxesLineStyleOrder 和 DefaultAxesColorOrder 设置所产生的影响clf resetset(gcf,DefaultAxesLineStyleOrder,:);set(gcf,DefaultAxesColorOrder,1 0 0);line(t,Y),弛撵位喳致痔搞缄驶杖责焊遂粪科伪蔚惋剥斡逾帽雄鹃膀丁蕉瞎竟代撤亲高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,例:x=0:

39、2*pi/180:2*pi;y=sin(2*x);h=line(x,y)将所有新图形窗口的颜色由省缺值设置为适中的灰色 set(0,DefaultFigureColor,0.5 0.5 0.5)h=line(x,y)set(h,color,m,linewidth,2,linestyle,*),请听滞线牌糯晶力虑恃圭蜒老骆异凛傣牵悦幸诚铭素曰学尼千金植铺挨箱高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,set(0,defaultfigurecolor,b)set(0,defaultaxescolo

40、r,g)h=line(x,y)set(h,color,r)set(gca,xcolor,w)set(gca,ycolor,w),瞩乘闷胆钱铃后扬遣造艰拨棋蹭辛磨惕诅乃仙匀呈哨迁惧宇叠莱绚予饺悍高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,h=surf(peaks(30)set(0,defaultsurfaceedgecolor,w)h1=surf(peaks(30)set(h1,edgecolor,default),扰毙婴江课郁售历谍京骡糟届滞皮诚娥蟹迁缚挎赁从糯腮嚷脖西每定绸屏高建军matla

41、b程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,t=0:0.1:2*pi;y=sin(t);plot(t,y)h=gcf;set(h,color,0,1,0.5,MenuBar,none,name,句柄作图示例)%a=get(h,child);grid ona=gcaset(a,color,y,linewidth,2,fontangle,italic,fontsize,15,GridLineStyle,-)p=get(a,child)set(p,color,r,linestyle,-,marker,*,marke

42、redgecolor,b,markersize,10),颗皖胁晶悉隋焊软虹臆铃笼初喂袁乖法轰秀廊朴洽盲识搪欣左赃宙亡莲掇高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,席挪罪罢绞掺等膜挂耪荐聘顿桅窒咨盔缚猛癸靖籽窑囊广术琴紧羌捌殆丘高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,自制光标指针形状(1)在屏幕的右上方创建一个背景为“橘黄”色的图形窗,窗名为“试验窗”。bdw=0.01;%左右两侧边和底边

43、的宽度tpw=0.15;%顶边宽度不能太小pos=1/2+bdw,2/3+bdw,1/2-2*bdw,1/3-bdw-tpw;figure(Units,normalized,Position,pos,Color,0.9,0.65,0)set(gcf,Name,试验窗)2)为该图形窗制作一个“手指”状光标指针P=ones(16,16)*NaN;P(1,5)=1;P(2:14,4)=1;P(15,5)=1;P(16,6:11)=1;P(15,12)=1;P(9:14,13)=1;P(2:9,6)=1;P(9,7)=1;P(8,8)=1;P(9,9)=1;P(8,10)=1;P(9,11)=1;P(

44、8,12)=1;P(2:14,5)=2;P(10:15,6:11)=2;P(9,8)=2;P(9,10)=2;P(9:14,12)=2;set(gcf,Pointer,Custom,PointerShapeCData,P,PointerShapeHotSpot,2,5),邻拇覆砰烩甫寓凯卜迅血雨强统吗糖莎锤木渐遏求炕自贼俭戳傲湾润铝妓高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,制作个性化双坐标系 tp=(0:100)/100*5;yp=8+4*(1-exp(-0.8*tp).*cos(3*tp

45、);tt=(0:500)/500*40;yt=120+40*(1-exp(-0.05*tt).*cos(tt);clf reset,h_ap=axes(Position,0.13,0.13,0.7,0.75);set(h_ap,Xcolor,b,Ycolor,b,Xlim,0,5,Ylim,0,15);nx=10;ny=6;pxtick=0:(5-0)/nx):5;pytick=0:(15-0)/ny):15;set(h_ap,Xtick,pxtick,Ytick,pytick,Xgrid,on,Ygrid,on)h_linet=line(tp,yp,Color,b);set(get(h_ap

46、,Xlabel),String,时间 rightarrow(分))set(get(h_ap,Ylabel),String,压力 rightarrow(times10 5 Pa)h_at=axes(Position,get(h_ap,Position);,诅黎原辱躁躇宁拷疆徽娘冀佃碾怂秋飘淤拥书徽挚害焰娇沤茶债毛券软菜高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,set(h_at,Color,none,Xcolor,r,Ycolor,r);set(h_at,Xaxislocation,top)se

47、t(h_at,Yaxislocation,right,Ydir,rev)set(get(h_at,Xlabel),String,fontsize15fontname隶书时间 rightarrow(分))set(get(h_at,Ylabel),String,(circC)fontsize15 leftarrow fontname隶书零下温度)set(h_at,Ylim,0,210)line(tt,yt,Color,r,Parent,h_at)xpm=get(h_at,Xlim);txtick=xpm(1):(xpm(2)-xpm(1)/nx):xpm(2);tytick=0:(210-0)/ny):210;set(h_at,Xtick,txtick,Ytick,tytick),犯棵酬垃卵蝴尹报躁撩曰响歌撮纫锻醚耽送芍忧延命灰灿癸锯捧轮读兽您高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,小 结,熟悉图形对象句柄与句柄操作掌握图形对象属性的查询与操作能够任意设置图形对象的属性,倦铝癣渴刁滦路级秘帅痪措锥奴冀臃芋封镍甩惦宋梗露壶舀炙胜肃矩禄叼高建军matlab程序设计第八章和九章matlab句柄绘图2015-10高建军matlab程序设计第八章和九章matlab句柄绘图2015-10,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号