آموزش متلب (MATLAB)
۵۴۳ آموزش
نمایش دسته بندی ها (۵۴۳ آموزش)

ساخت ماتریس دو بعدی برای رسم شکل های سه بعدی ، با دستور meshgrid در متلب

فرض کنید بخواهیم ماتریس z را به صورت یک ماتریس دو بعدی، بر حسب مقادیر مختلف x و y ، تعریف کنیم و سپس آن را به صورت یک شکل سه بعدی (با هر دستور ترسیم سه بعدی دلخواه) رسم کنیم. برای این منظور، قبل از هر چیز باید بازه لازم برای x و y و همچنین مقادیر انتخاب شده از x و y در این بازه را تعریف کنیم. برای این منظور، می توانیم از دستور meshgrid در متلب استفاده کنیم. به مثال زیر توجه کنید :

مثال

clear all
close all
clc
 
[x,y] = meshgrid(-4:0.1:4,-3:0.1:3)
z=sqrt(x.^2+y.^2);
 
mesh(x,y,z)
colorbar
xlabel('x')
ylabel('y')
zlabel('z')

نتیجه :

ابتدا با دستور [x,y] = meshgrid(-4:0.1:4,-3:0.1:3) تعیین کرده ایم که بازه تعریفی برای x ، به صورت -4:0.1:4 و بازه تعریفی برای y ، به صورت -3:0.1:3 باشد. سپس مقادیر z را به صورت دلخواه، بر حسب مقادیر مختلف x و y ، به دست آورده ایم. دقت کنید که به کار بردن علامت نقطه (.) بعد از x و y ، ضروری می باشد و معنی آن این است که هر عنصر x یا y ، به توان 2 برسد، نه اینکه کل ماتریس x یا y به توان 2 برسد. سپس ماتریس z را با دستور mesh ، به صورت سه بعدی رسم کرده ایم. دستور colorbar برای این است که مقدار متناظر با رنگ های مختلف، در کنار شکل، نمایش داده شود. دستورات xlabel و ylabel و zlabel ، برای تعیین عنوان برای محورهای مختصات، به کار رفته اند.

ساخت ماتریس دو بعدی برای رسم شکل های سه بعدی ، با دستور meshgrid در متلب
نویسنده علیرضا گلمکانی
شماره کلید 120
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 6 5 1
آتریا
۱۳۹۶/۰۹/۱۹
۱۳:۴۶

با تشکر
مطلب مفید و مختصر و کاربردی!!!

SMR_HA
۱۳۹۸/۰۸/۰۵
۲۰:۳۹

با سلام و خسته نباشید 
از سایت خوبِ تون ممنون 
من ۲ تا ابر نقاط دارم که یکیشون و به عنوان مرجع به سطح تبدیل کردم حالا می‌خوام فاصله یه بین این سطح و ابر نقاط مو نمایش بدم. چطور می‌شه این کارو انجام بدم؟ 
ممنون 

اسما
۱۳۹۸/۰۹/۲۱
۰۱:۰۱

سلام ...من برای یه برنامه نیاز دارم که یک ماتریس 3×9×3رو به یک ماتریس 9×9تبدیل کنم ...به طوریکه طبقه اول ماتریس سه بعدی سه سطر اول طبقه دومش سه سطر دوم و طبقه سومش سه سطر سوم رو تشکیل بدن ...ممنون میشم جواب بدید خیلی وقته گیر این مشکل هستم 

admin
۱۳۹۸/۰۹/۲۱
۰۸:۵۵

سلام.
از دستور reshape در متلب (MATLAB)، برای تغییر اندازه (ابعاد) ماتریس استفاده نمایید :

کلید شماره 71

اگر دستور reshape ، ماتریس را به آن شکلی که شما خواستید، تغییر اندازه نداد (چیدمان عنصرها در ماتریس، متفاوت با خواست شما بود)، می توانید با استفاده از حلقه های for تو در تو ، عنصرهای ماتریس اصلی را فراخوانی کرده و به شکلی که خودتان می خواهید، در یک ماتریس جدید، ذخیره نمایید.

Flower

کاربر
۱۴۰۰/۰۴/۱۰
۰۱:۳۲

خیلی خوب توضیح دادید. ممنون

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)