ترسیم ماتریس ها در متلب به صورت یک تصویر با دستور imagesc
در متلب، با استفاده از دستور imagesc ، می توانید مقادیر یک ماتریس را به صورت یک تصویر مشاهده کنید. در واقع، متلب هر یک از عناصر ماتریس را به صورت یک نقطه در نظر می گیرد و سپس بر اساس مقدار آن نقطه، رنگی را به آن اختصاص می دهد و بنابراین با کنارهم قرار دادن این نقاط، تصویری از مقادیر عناصر ماتریس، حاصل می شود. به مثال زیر توجه کنید :
دستور (10,10)Zeros ، ماتریسی با 10 ردیف و 10 ستون می سازد که تمامی مقادیر عناصر آن، برابر صفر می باشد. سپس با استفاده از دو حلقه تو در توی for ، مقدار هر عنصر ماتریس را برابر مجموع شماره ردیف آن و شماره ستون آن قرار داده ایم. دقت شود که در خطی، تنها نام متغیر A را نوشته ایم و این برای این است که ماتریس متناظر با آن در صفحه Command نمایش داده شود. دستور imagesc ، مقادیر ماتریس A را به صورت یک تصویر رنگی نمایش می دهد.
نتیجه :
و تصویری از مقادیر ماتریس A به شکل زیر نمایش داده می شود :
تغییر رنگ های مورد استفاده در دستور imagesc :
همان طور که گفتیم، دستور imagesc ، به هر مقدار، رنگی را اختصاص داده است، اما شاید بخواهیم رنگ های دیگری برای تصویر انتخاب کنیم. برای این منظور، باید پس از دستور imagesc ، از دستور colormap استفاده کنیم. مثال قبل را این بار به گونه ای تغییر می دهیم که مقادیر ماتریس، به صورت سیاه و سفید، نمایش داده شوند :
پس از دستور imagesc ، از دستور colormap ، با مشخصه gray ، استفاده شده است که باعث می شود دستور imagesc ، تصویر مقادیر ماتریس A را به صورت سیاه و سفید نمایش بدهد.
نتیجه :
و تصویر ماتریس A به صورت زیر نمایش داده می شود :
برای دستور colormap ، می توانیم مشخصه های مختلفی با رنگ های مختلف تعریف کنیم که لیست آنها و رنگ های معادلشان، در زیر نمایش داده شده است :
اگر پس از دستور imagesc ، دستور colormap نوشته نشود، متلب به صورت خودکار، گزینه jet را برای colormap در نظر می گیرد.
نمایش مقدار متناظر با هر رنگ در تصویر :
در تصویر مثال قبل، نمی توانیم تشخیص بدهیم که هر رنگ، چه مقدار عددی را نشان می دهد. برای مشخص شدن مقدار متناظر با هر رنگ، باید پس از دستور imagesc ، از دستور colorbar استفاده کنیم. به مثال زیر توجه کنید :
به کد مثالی که قبلا شرح دادیم، دستور colorbar را اضافه می کنیم :
نتیجه :
و این بار، در کنار تصویر ساخته شده، یک نوار رنگی نمایش داده شده است که مقدار عددی متناظر با هر رنگ را نمایش می دهد :
من عالی بود و جالب سپاس
فرهاد عالی بود . ممنونم
پریسا عالیییی بود سپاس فراوان
رضا سایت کلیدستان واقعا محشره، الان چندین وقته هر جا به مشکل میخورم از اطلاعات خوب این سایت استفاده میکنم، واقعا ممنون
ghazal سلام . ممنون از اطلاعات خیلی خوبتون .
یه سوال داشتم :
ماتریسی که به صورت (M(:,:,x تعریف میشه را چطوری رسم میکنن؟ دستوری برای رسم این مدل هست؟
admin سلام.
اگر در (M(:,:,x ، مقدار x برابر یک عدد مشخص باشد، کدنویسی می تواند مشابه کد متلب (MATLAB) زیر باشد (با تغییر کدنویسی همین کلید آموزشی) :
<?php
clear all
close all
clc
A = zeros(10,10,10);
for m=1:10
for n=1:10
for f=1:10
A(m,n,f)=m+n+f;
end
end
end
A
imagesc(A(:,:,5))
اما اگر x هم متغیر فرض شود، با توجه به ابعاد ماتریس، باید از دستور surf و یا دستورات مشابه در متلب (MATLAB) استفاده شود :
کلید شماره 114
دستورات مشابه دستور surf را می توانید در دسته کلید (دسته بندی) زیر بیابید :
دسته کلید شماره 292
موسوی
فاطمه
فاطمه
پیمان
ژینا
ژینا