تبلیغات
آموزش مطلب - مطالب axes

نشانگر فشار

نویسنده :امین باشی
تاریخ:یکشنبه 30 مرداد 1384-10:08 ق.ظ

امروز می‌خوایم با استفاده از axes یك نشانگر  طراحی كنیم.معمولا در صنعت از این جور نشانگر ها برای نمایش فشار و كنترل آن استفاده می‌شد.

 این نشانگر یك پیكان آبی برای نشان دادن set point و یك پیكان قرمز برای نشان دادن فشار لازم دارد.

بهتره شروع كنیم

اول باید یك نوار عمودی برای اندازه‌ گیری فشار طراحی كنیم.

a=axes('position',[.4 .1 .2 .8],'box','on','yMinorTick','on','YGrid','on');

اگر مطلب قبلی رو خوانده باشید حتما می‌توانید بگویید این دستور چه كاری می‌كند.

axis([0 .5 -5 105])

hold on

الان بك كادر داریم كه از در محو y از 0 تا 100 شماره گذاری شده.كاره تابع hold  این است كه اندازه كادر را برای ما حفظ می كند.

فكر نمی كنم محور x  نیاز به شماره گذاری داشته باشد. مقداری كه به ویژگی xtick نسبت می‌دهیم باید ماتریس عددی باشد.

set(a,'XTick',[])

حالا باید پیكان ها را بكشیم اما فبل از اون برای هر پیكان یك محور تعریف می كنیم ولی آنها را نمایش نمی دهیم.

a1=axes('position',[.5 .1 .1 .8],'Visible','off' );

این كار كمك می‌كند كه هر پیكان را به طور مستقل از دیگری تعریف كنیم.

axis([0 .5 0 1])

hold on

با استفداه از دستور axis محور x را در فاصله‌ی 0 تا 0.5 تعرف كردیم. اما یادمان باشد كه این محور نمایش داده نمی‌شود

 پس چندان مهم نیست كه اندازه‌ی آن چه چقدر باشد.فقط در هنگام رسم پیكان مخنصات آن را با توجه به اندازه‌ی محور تعین می‌كنیم.

برلی رسم پیكان از دستور area استفاده می‌ كنیم.

area(Y)

area(X,Y)

area(...,basevalue)

area(...,'PropertyName',PropertyValue,...)

area(axes_handle,...)

h = area(...)

area('v6',...)

كار این دستور این است كه یك ناحیه رنگی ایجاد می كند به این شكل كه با تجه به نقاط داده شده به آن فاصله‌ی 0 تا آن نقاط را پر می‌كند.

 اگر از شكل اول دستور استفاده شود داریه های ماتریس را در مقابل شماره‌ی اندیس آن رسم می‌كند.

در شكل دوم ماتریس اول نشانن دهنده‌ی مقدار x  نقاط و ماتریس دوم y است.

اگر بخواهید این ناحی رنگی را از جای دیگری بجز 0 رسم كنید با ویژگی BaseValue می توانید ای كا را انجام دهید.

p=area([.1 .125 .15],[.2 .4 .2],'FaceColor','r');

همین كا را برای پیكان set piont  انجام می دهیم.

a2=axes('position',[.4 .1 .1 .8],'Visible','off');

axis([0 .5 0 1])

hold on

p_set=area([0.1 .125 .15],[.2 .4 .2],'FaceColor','b');

الان باید هر كدام از پیكان ها را در جای خود قرار دهیم.

 

axes(a1)

view(-90,90)

و پیكان بعدی

axes(a2)

view(90,90)

دستور axes(a1) محور جاری را به محو a1 تغیر می‌دهد .

و اما دستور view با استفاده از این دستور می‌توان محور ها را چرخاند.شكل این دستور به صورت های زیر است.

view(az,el)

view([az,el])

view([x,y,z])

view(2)

view(3)

view(T)

 

[az,el] = view

T = view

در اینجا از شكل اول دستور استفاده كردیم . شكل دوم دستور هم مترادف با شكل اول است.

Az  مقدار زاویه‌ی  چرخش در جهت عقربه های ساعت است و el  زاویه چرخش حول محور x است.

هنگامی كه یك محر ایجاد می‌شود مقدار az, el را می توان با دستور [az,el]=view بدست آورد.

 

برنامه‌ی زیر شكل كامل شده‌ی دستورات بالا با یك for  اضافه برای حركت دادن پیكان‌ها بر روی محور است.

 

a=axes('position',[.4 .1 .2 .8],'box','on','yMinorTick','on','YGrid','on');

hold on

axis([0 .5 -5 105])

set(a,'XTick',[])

a1=axes('position',[.5 .1 .1 .8],'Visible','off' );

axis([0 .5 0 1])

hold on

p=area([.1 .125 .15],[.2 .4 .2],'FaceColor','r');

a2=axes('position',[.4 .1 .1 .8],'Visible','off');

axis([0 .5 0 1])

hold on

p_set=area([0.1 .125 .15],[.2 .4 .2],'FaceColor','b');

axes(a1)

view(-90,90)

axes(a2)

view(90,90)

for i=.05:.001:.45

    set(p,'xdata',[i, .025+i .05+i])

    set(p_set,'xdata',[i, .025+i .05+i])

    drawnow

End

 



نوع مطلب : axes 

axes

نویسنده :امین باشی
تاریخ:جمعه 28 مرداد 1384-07:08 ق.ظ

تابع axes برای ایجاد محور های مختصات استفاده می شود.axes را با axis اشتباه نكنید تابع axis برای  تعین مقیاس محور ها استفاده می شود.

axes

axes('PropertyName',PropertyValue,...)

axes(h)

h = axes(...)

 

این تابع مثل تابع figure ویژگی های متعددی دارد كه تعدادی از آنها با تابع figure مشترك است.

 

ویژگی box

مقدار این ویژگی در حالت پیش فرض off است و با on آن حابت محو ها به صورت یك جعبه بسته در می آید

 

ویژگیXMinorTick, YMinorTick, ZMinorTickon

مقدار این ویژگی در حالا پیش فرض off است.

set(gca,'XMinorTick','on')

تابع gca به معنی محور جاری است. عمل كرد ویژگی XMinorTick با مقایسه محور x و محور y مشهود است.

ویژگی XGrid, YGrid, ZGrid  

set(gca,'YGrid','on')

مفدار این ویژگی هم در حالت پیش فرض off است.

 



نوع مطلب : axes 





All right reserved©2005 Amin Bashi