Вежба Графика У МATLAB-у постоји много команди за цртање графика. Изглед графика може се подешавати произвољним избором боје, дебљине и врсте линија, уношењем мреже, наслова, коментара и слично. У овој вежби обрађенo je цртање дводимензионих графика... ГРАФИЧКО ПРЕДСТАВЉАЊЕ ФУНКЦИЈА ЈЕДНЕ ПРОМЕНЉИВЕ Најједноставнији начин за графичко представљање, са линеарном поделом на осама, је коришћењем наредбе plot. Приликом цртања отвара се графички прозор за који важе иста правила као код Windows прозора. Наредба има облик plot(x,y) Аргументи x и y су вектори, који морају имати исти број елемената. ПРИМЕР : Нацртати вектор x = (,,,8,6). >> x=[,,,8,6];plot(x) 6 8 6.... Из овог примера можемо видети да је MATLAB за вредности независно променљиве x узео редни број елемента, а њихове слике, су вредности вектора x, тј. тачке нацртаног графика имају координате (,),(,),(,),(,8),(,6 ). У општем случају наредба plot(x) црта график спајајући тачке (i, x(i)), i=,,,, N, где је N дужина вектора.
ПРИМЕР : Нацртати вектор дат координатама x = (,,,8,6) и y = (,,,8,6). >> x=[,,,8,6]; y=[-,,-,8,6]; plot(x, y) 6 8 6 - - 6 8 6 Наредба plot() се користи и за цртање функција једне променљиве. У овом случају мора унапред да се дефинише домен променљиве x у коме ће функција бити нацртана. ПРИМЕР : Нацртати функцију y = e x у домену x [,] >> x=-: x = - >> y=*exp(x) y =.78..66 >> plot(x,y)...... - -.8 -.6 -. -....6.8 >> x=-:.: x = -. -... >> y=*exp(x) y =.78...97.66
>> plot(x,y)...... - -.8 -.6 -. -....6.8 >> x=-:.:; >> y=*exp(x); >>plot(x,y)...... - -.8 -.6 -. -....6.8 Напомена: У првом случају користили смо домен [,] и MATLAB је за вредности независно променљиве x узео три узастопне вредности,,, а функција је нацртана као изломљена линија кроз тачке. У другом и трећем случају смо дефинисали корак, и,, па је независно променљива x имала и вредности, а функција је нацртана као изломљена линија кроз, односно тачака. ПРИМЕР : У истом координатном систему нацртати функције y = e x, у домену [,] x, са кораком.. y = x и >> x=-:.:; y=*x ;y=*exp(x); plot(x,y,x,y)
6 - - - -.8 -.6 -. -....6.8.. ИЗБОР ВРСТЕ И ОБЛИКА ЛИНИЈЕ Наредбом plot у могућности смо да бирамо избор облика и боје линија. Нареба има облик plot( x,y,'врста линије, боја'). Симбол Опис линије. Тачка о Круг х х-знак + Плус * Звезда - Пуна линија -. Тачка црта : Тачкаста -- Испрекидана линија Симбол боје y m s r g b k w Боја Жута Љубичаста Цијан Црвена Зелена Плава Црна Бела
ПРИМЕР : У предходном примеру, произвољно, уведимо ознаке за врсту и боју линије. >> x=-:.:;y=*x; y=*exp(x); >> plot(x,y,'g',x,y,'m+') 6 - - - -.8 -.6 -. -....6.8.. ЦРТАЊЕ ГРАФИКА ФУНКЦИЈА За цртање графика функција можемо да користимо и наредбу fplot. Нареба има облик fplot(f(x),xmin,xmax) f ( ) x je функција коју цртамо, x je вектор чији је први елемент xmin, а последњи елемент xmax. У наредби fplot функција се пише под наводницима ' f '. ПРИМЕР 6: Нацртати функцију = x 9 >> y='x^-9'; fplot(y,[-,]) y у домену [,] x. - - - - - -6-7 -8-9 - - -
.. ОЗНАЧАВАЊЕ ГРАФИКА И ОСА MATLAB нуди могућности означавања оса, писање различитог текста и разне друге могућности. Ознака title() xlabel() ylabel() text() gtext() grid Опис назив графика назив x осе назив y осе назив текста на графику текст на позицији означеној мишем цртање линија мреже Текст у предходним наредбама пише се у загради под наводницима. Наредба hold on задржава слику на екрану. Супротна њој је наредба hold off. У наредби gtext корисник накнадно сам одређује мишем место на које жели да смести текст. ПРИМЕР 7: Нацртати функцију наредбе из табеле обележити слику. y = sin x на домену x [ π, π ] и користећи >> y='sin(x)';fplot(y,[-*pi,*pi]) >> hold on >> grid >> title('sinusna funkcija') >> xlabel('x osa') >> ylabel('y osa') >> gtext('max').8.6 sinusna funkcija max.. y osa -. -. -.6 -.8 - -6 - - 6 x osa Наредба subplot(m, n, p) формира више графика на екрану. Екран се дели на m n делова, а график се црта у p -том делу екрана. 6
= ; ПРИМЕР 8: Користећи наредбу subplot нацртати функције: y x, x [,] y = xe x, x [,] ; y = x, x [, ]; y = cos x, x [ π, π ]. >> x=-::; y=x; >> x=:.:; y=x.*exp(x); >> x=-:.:; y=x.^; >> x=-pi:pi/6:pi; y=cos(x); >> subplot(,,),plot(x,y) >> subplot(,,),plot(x,y) >> subplot(,,),plot(x,y) >> subplot(,,),plot(x,y). -. - - -... - -. -. - - -.. СКАЛИРАЊЕ ОСА Осе x и y аутоматски се постављају на основу минималне и максималне вредности координата. Ознака axis('equal') axis(xmin,xmax,ymin,ymax) axis('normal') axis('axis') axis Опис Провера се да ли је прираштај по осама исти Задају се границе у којима ће бити нацртан график Враћање на првобитне димнезије графика Враћање на првобитно скалирање Добија се информација о тренутним димензијама ПРИМЕР 9: Нацртати функцију y = sin x за -π x π, а затим поставити да домен по x оси буде -π x π, а по y оси буде,. 7
>> x=-*pi:pi/6:*pi; y=sin(x);plot(x,y),grid >> axis([-pi,pi,-,]).8.6.. -. -. -.6 -.8 - -8-6 - - 6 8.. -. - -. - - - - 8