آموزش Matlab - نمودارهای ۲ بعدی در matlab
سرویس آموزش و آزمون برق نیوز: پیشنیاز این آموزش، تسلط بر مباحث ابتدایی متلب مثل ایجاد بردارها و ماتریس ها و کار کردن با m فایل ها می باشد.
فرض کنید که می خواهیم نمودار سینوس را در فاصله بین صفر تا 2*pi رسم کنیم:
t=0:0.01:2*pi;
u=sin(t);
گام متغیر t را برابر با 0.01 قرار دادیم تا وقتیکه نمودار سینوس کشیده میشود حالت شکسته نداشته باشد.
دستور رسم نمودارهای دو بعدی در متلب دستور plot هست:
plot(t,u)
با اجرای دستور بالا میبینید که نمودار سینوس کشیده میشود.
دستوراتی که از الان به بعد گفته می شود حتما باید زیر دستور plot نوشته شود.
grid on یا grid
دستور grid on یا grid باعث شبکه بندی صفحه مختصات میشود.
xlabel('t')
ylabel('u')
title('graph u vs t ')
legend('sin')
دستور xlabel باعث گذاشتن برچسب بر روی محور x ها میشود. بین دو علامت ' ' هرچی بنویسید در روی محور x ها نشان داده خواهد شد.
دستور ylabel باعث گذاشتن برچسب بر روی محور y ها، دستور title باعث گذاشتن عنوان بر روی نمودار و دستور legend باعث گذاشتن راهنما در گوشه نمودار میشود. بین دو علامت ' ' هرچی بنویسید همان نشان داده خواهد شد.
فرض کنید که می خواهید در روی بر چسب محور x علامت ریاضی آلفا یا بتا یا هر حرف یونانی دیگه قرار گیرد. برای این کار در بین دو علامت ' ' کلمه alpha یا beta را تایپ میکنید و قبلش علامت را می گذارید:
xlabel('alpha')
title('beta')
حال فرض کنید که می خواهید اندیس بالا یا پایین در روی نوشته هاتون داشته باشید. اندیس پایین با علامت _ ایجاد میشود و اندیس بالا با علامت ^ ایجاد میشود:
xlabel('x_i')
legend('R^2')
اما فرض کنید که می خواهید بر روی برچسب محور x (یا محور y یا در عنوان و یا در راهنما) عبارت R را بنویسید که در اندیس پایین ان عبارت index باشد. شاید فکر کنید باید به صورت زیر بنویسید:
xlabel(R_index)
اما با این کار فقط حرف i به صورت اندیس پایین نشون داده خواهد شد. و یا مثلا اگر که بخواهید index اندیس بالا نوشته شود دستور زیر فقط حرف i را در اندیس بالا نشان میدهد.
legend('R^index')
برای اینکه این دستور درست کار کند 2 راه وجود داره که راه اول کمی غیر منطقی به نظر میرسد:
راه اول:
xlabel(R_i_n_d_e_x)
legend(R^i^n^d^e^x)
این کار برای اندیسهایی که تعداد حروفشان کم است، شاید به نظر غیر منطقی نیاید اما اگرکه کلمه اندیس بالا یا پایین 50 حرف باشه غیر منطقی است که بین 50 حرف از _ یا ^ استفاده کنیم. برای همین بهتر است از راه دوم استفاده کنیم.
راه دوم: در این راه عبارت اندیس را بین دو آکولاد قرار می دهیم:
xlabel(R_{index})
ylabel(R^{index})
فرض کنید می خواهید در راهنمای نمودار خود عبارت آلفا به توان سیگما را نشان دهید:
legend(alpha^{sigma})
سایر علائم و حروف یونانی رو می تونید در قسمت help با جستجوی عبارت text properties در یک جدول کاملی پیدا کنید.
اما متوجه شدید که نمودار وقتی کشیده شد با رنگ پیش فرض یعنی آبی کشیده شد. اگر که بخواهید رنگ نمودار را تغییر دهید باید در همان دستور plot این کار را انجام دهید:
راه اول: تغییر رنگ به یکی از رنگهای سیاه، سفید، فیروزه ای، قرمز، سبز، آبی، زرد و بنفش.
plot(t,u,' ')
بین دو علامت ' ' هر کدام از حروف زیر را که بنویسید رنگ متناسب با حرف نوشته شده تغییر خواهد کرد:
c : فیروزه ای
m : بنفش
b: آبی (که اگر نوشته نشود هم رنگ آبی پیش فرض می باشد)
r: قرمز
g: سبز
k: سیاه
w: سفید
y: زرد
برای مثال می خواهید رنگ نمودار قرمز شود:
plot(t,u,'r')
راه دوم: می خواهید از رنگهای ترکیبی دیگر استفاده کنید:
plot(t,u,'color',[r g b])
به جای سه عدد r و g و b باید عددی بین 0 و 1 وارد کنید. عدد مربوط به r معرف رنگ قرمز، عدد مربوط به g معرف رنگ سبز و عدد مربوط به b معرف رنگ آبی میباشد. مسلما اگر سه عدد را به صورت [0 0 1] قرار دهید رنگ به صورت قرمز خواهد شد و اگر هر سه را برابر با 1 قرار دهید مشکی و اگر هر سه را برابر با 0 قرار دهید سفید خواهد شد. پش با انتخاب سه عدد بین 0 و 1 میلیونها رنگ می توانید داشته باشید:
plot(t,u,'color',[1 0.2 0.06])
بار دیگر به دستور ابتدایی بر می گردییم. مشاهده کردید که وقتی نمودار را کشیدید با یک ضخامت پیش فرض نمودار برای شما کشیده شد. اگر که بخواهید ضخامت را هم عوض کنید باید از دستور LineWidth در دستور plot به صورت زیر استفاده کنید:
plot(t,u,'LineWidth',a)
یا
plot(t,u,'g','LineWidth',a)
یا
plot(t,u,'color',[1 .03 .5],'LineWidth',a)
منظور از a عددی است که ضخامت خط نمودار را تعیین می کنه مثلا a=2:
plot(t,u,'k','LineWidth',2)
از ارسال دیدگاه های نا مرتبط با متن خبر، تکرار نظر دیگران، توهین به سایر کاربران و ارسال متن های طولانی خودداری نمایید.
لطفا نظرات بدون بی احترامی، افترا و توهین به مسئولان، اقلیت ها، قومیت ها و ... باشد و به طور کلی مغایرتی با اصول اخلاقی و قوانین کشور نداشته باشد.
در غیر این صورت، «برق نیوز» مطلب مورد نظر را رد یا بنا به تشخیص خود با ممیزی منتشر خواهد کرد.