Вежба Графика У Octave постоји много команди за цртање графика. Изглед графика може се подешавати произвољним избором боје, дебљине и врсте линија, уношењем мреже, наслова, коментара и слично. У овој вежби обрађенo je цртање дводимензионих графика... ГРАФИЧКО ПРЕДСТАВЉАЊЕ ФУНКЦИЈА ЈЕДНЕ ПРОМЕНЉИВЕ Најједноставнији начин за графичко представљање, са линеарном поделом на осама, је коришћењем наредбе plot. Приликом цртања отвара се графички прозор за који важе иста правила као код Windows прозора. Наредба има облик plot(x,y) Аргументи x и y су вектори, који морају имати исти број елемената. ПРИМЕР : Нацртати вектор x (,,,8,6). >> x=[,,,8,6];plot(x) 6 8 6.... Из овог примера можемо видети да је Octave за вредности независно променљиве 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 Напомена: У првом случају користили смо домен, и OCTAVE је за вредности независно променљиве x узео три узастопне вредности,,, а функција је нацртана као изломљена линија кроз тачке. У другом и трећем случају смо дефинисали корак, и,, па је независно променљива x имала и вредности, а функција је нацртана као изломљена линија кроз, односно тачака. ПРИМЕР : У истом координатном систему нацртати функције и y e x, у домену, x, са кораком.. y x >> x=-:.:; y=*x ;y=*exp(x); plot(x,y,x,y)
6 - - - -.8 -.6 -. -....6.8 ПРИМЕР: >> X=:pi/:*pi; >>Y=cos(X)*; >>Y=cos(X)*; >>Y=cos(X)*; >>Y=cos(X)*; >>Z=[Y;Y;Y;Y] >>plot(x,y,x,y,x,y,x,y) % isti rezultat crtanja možemo dobiti i sa ovakvim pozivanjem naredbe plot() >> plot(x,z) Позивањем наредбе peaks( ) са једним аргументом n даће матрицу димензија nxn. Наредбу peaks( ) можемо да искористимо како бисмо приказали предност позивања наредбе plot() са матричним аргументом >> plot(peaks()).. ИЗБОР ВРСТЕ И ОБЛИКА ЛИНИЈЕ Наредбом 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 - - -.. ОЗНАЧАВАЊЕ ГРАФИКА И ОСА OCTAVE нуди могућности означавања оса, писање различитог текста и разне друге могућности. Ознака title xlabel ylabel text gtext grid legend Опис назив графика назив x осе назив y осе назив текста на графику текст на позицији означеној мишем цртање линија мреже додавање легенде у графику Текст у предходним наредбама пише се у загради под наводницима. Наредба hold on задржава слику на екрану. Супротна њој је наредба hold off. У наредби gtext корисник накнадно сам одређује мишем место на које жели да смести текст. ПРИМЕР 7: Нацртати функцију y sin x на домену x, и користећи наредбе из табеле обележити слику. 6
y osa >> y='sin(x)';fplot(y,[-*pi,*pi]) >> hold on >> grid >> title('sinusna funkcija') >> xlabel('x osa') >> ylabel('y osa') >> gtext('max').8 sinusna funkcija max.6.. -. -. -.6 -.8 - -6 - - 6 x osa Наредба subplot(m, n, p) формира више графика на екрану. Екран се дели на m n делова, а график се црта у p -том делу екрана. ПРИМЕР 8: Користећи наредбу subplot нацртати функције: y x, x, y xe x, x, ; ;,, ; y cos x, x, y 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). -. - - -... - -. -. - - - 7
.. СКАЛИРАЊЕ ОСА Осе x и y аутоматски се постављају на основу минималне и максималне вредности координата. Ознака axis('equal') axis(xmin,xmax,ymin,ymax) axis('normal') axis('axis') axis Опис Провера се да ли је прираштај по осама исти Задају се границе у којима ће бити нацртан график Враћање на првобитне димнезије графика Враћање на првобитно скалирање Добија се информација о тренутним димензијама ПРИМЕР 9: Нацртати функцију y sin x за - x, а затим поставити да домен по x оси буде - x, а по y оси буде,. >> x=-*pi:pi/6:*pi; y=sin(x);plot(x,y),grid >> axis([-pi,pi,-,]).8.6.. -. -. -.6 -.8 - -8-6 - - 6 8.. -. - -. - - - - ВЕЖБА: 8
. Нацртати функције y sin x и y cos x у домену од,.. Нацртати функцију описати је текстом. y x x 6 у произвољном домену и. Користећи наредбу subplot нацртати следеће функције: y x ; y x ; y sin( x) ; y x за:. x,,. са кораком,..x. Нацртати функцију y. cos(6x) у домену x [-,] са кораком,. 6. Шта раде следеће наредбе: bar(x); bar(y); bar(y), pie(x) ( дефинисати произвољне векторе x и y и нацртати преко subplot да се свака наредба слика у посебном прозору) 7. Електрично коло садржи напонски извoр v унутрашњег отпора r и отпорник R. Снага која се на отпорнику претвара у топлоту дата је v R изразом P. Нацртати снагу P у функцији R за <R<Ω и R r обележити правилно осе, ако је v=v и r=. Ω. v r R 9