به روزرسانی مقادیر رسم شده در یک شکل، با دستور refreshdata در متلب
معمولا هنگامی که یک شکل از مقادیر یک متغیر رسم می شود، اگر قرار باشد آن متغیر بر اساس یک سری محاسبات جدید، مقادیر جدیدی بیابد، دوباره با دستورهای رسم، مقادیر جدید آن را رسم می کنیم (در همان پنجره شکل قبل و یا در یک پنجره شکل جدید). اما با دستور refreshdata در متلب می توانیم تعیین کنیم که شکل رسم شده، بر اساس مقادیر جدید آن متغیر، به روز شود.
برای درک بهتر این موضوع، به مثال زیر توجه کنید :
close all
clc
x=0:0.1:2*pi;
y=sin(x);
h = plot(x,y)
set(h,'YDataSource','y')
pause(3)
y=cos(x);
refreshdata
دستور pause برای ایجاد توقف در اجرای برنامه می باشد و به ما این امکان را می دهد که بروزرسانی شکل را با چند ثانیه تاخیر ببینیم.
ابتدا y را برابر سینوس x تعیین کرده ایم و شکل را بر اساس آن رسم می کنیم، سپس y را برابر کسینوس x قرار می دهیم و در خط آخر از کدها، با دستور refreshdata ، تعیین می کنیم که شکل بر اساس مقادیر جدید، به روز شود.
دقت شود که خط زیر از کدها، متغیر y را به عنوان متغیری که باید مقادیر آن به روز شود، تعیین کرده است (ولی متغیر x را تعیین نکرده ایم، بنابراین اگر مقادیر x را تغییر بدهیم، با خطا روبرو خواهیم شد، در مثال بعدی، چگونگی تغییر مقادیر x را هم شرح خواهیم داد) :
نتیجه :
ابتدا شکل زیر رسم می شود (y برابر سینوس x) :

پس از گذشت 3 ثانیه، شکل رسم شده، بر اساس جدیدترین مقادیر متغیر y به روزرسانی می شود (یعنی y برابر کسینوس x) :

همان مثال قبل را تغییر می دهیم، به گونه ای که تغییر دادن مقادیر متغیر x نیز امکان پذیر باشد (با خطا روبرو نشویم). برای این منظور، باید خط زیر را به کدها اضافه کنیم :
بنابراین کدها را به صورت زیر می نویسیم (مقادیر x را هم تغییر می دهیم) :
close all
clc
x=0:0.1:2*pi;
y=sin(x);
h = plot(x,y)
set(h,'YDataSource','y')
set(h,'XDataSource','x')
pause(3)
x=0:0.1:4*pi;
y=cos(x);
refreshdata
نتیجه :
ابتدا شکل زیر رسم می شود (y برابر سینوس x و بازه x از 0 تا 2*pi) :

پس از گذشت 3 ثانیه، شکل رسم شده، بر اساس جدیدترین مقادیر متغیر y و متغیر x به روزرسانی می شود (یعنی y برابر کسینوس x و همچنین بازه مقادیر مربوط به x نیز برابر 0 تا 4*pi خواهد بود) :

مثال خود نرم افزار متلب :
close all
clc
Z = peaks(5);
h = surf(Z)
set(h,'ZDataSource','Z')
pause(3)
Z = peaks(25);
refreshdata
دستور pause برای ایجاد توقف در اجرای برنامه می باشد و به ما این امکان را می دهد که به روزرسانی شکل را با چند ثانیه تاخیر ببینیم.
نتیجه :
ابتدا شکل زیر رسم می شود :

سپس پس از گذشت 3 ثانیه، شکل به صورت زیر به روزرسانی می شود :
