MATLAB udostępnia liczne metody wizualizacji otrzymanych
Transkrypt
MATLAB udostępnia liczne metody wizualizacji otrzymanych
MATLAB udostępnia liczne metody wizualizacji otrzymanych wyników obliczeń. Funkcje obliczeń moŜemy podzielić na cztery podstawowe grupy: 1. Przeznaczone do tworzenia wykresów dwui trzywymiarowych 2. Prezentujący wykresy ciągłe i dyskretne 3. UmoŜliwiające tworzenie grafiki wektorowej i rastrowej 4. Wysokiego i niskiego poziomu 1 Grafika dwuwymiarowa Do wyświetlania grafiki słuŜy polecenie plot(x,y), gdzie y=f(x) Zamkniecie okna graficznego odbywa się poprzez wywołanie funkcji close; Dodatkowe okno otwiera funkcja figure( ). W celu wyświetlenia kilku wykresów w jednym oknie posługujemy się funkcją subplot(m,n,p), gdzie: m - liczba wykresów w pionie; n - liczba wykresów w poziomie; p - kolejny numer wykresu. Do rysowania prostych wykresów słuŜy funkcja plot plot(x,y) rysuje wykres elementów wektora y względem elementów wektora x Funkcja linspace pomaga w tworzeniu danych do wykresu linspace(x1,x2,N) generuje wierszowy wektor N liczb rozłoŜonych równomiernie w przedziale od x1 do x2 2 Wykresy moŜna opisać podając nazwy zmiennych: title('tekst') -tytuł rysunku xlabel('tekst') - opis osi x; ylabel('tekst') - opis osi y; text(x,y,'tekst') - umieszcza 'tekst' w dowolnym punkcie o współrzędnych (x,y) grid on włącza siatkę grid off wyłącza siatkę Funkcje tę nalezy uŜywać po funkcji wyświetlania wykresu plot( ) na którym to wykresie chcemy zmienić np. tytuł. Istnieją funkcje pozwalające na tworzenie dowolnych rysunków z linii i wielokątów. line(x,y) rysuje linię łamaną łącząc wierzchołki punktów wyznaczonych przez elementy wektorów x i y 3 Matlab umoŜliwia tworzenie sekwencji animowanych zawierających symulację ruchu. Kreślą one krzywe na ekranie komputera w przestrzeni 2D lub 3D, w taki sposób jakby symulowały ruch komety. Rysowany jest niewielki ślad, który przemieszczając się w oknie graficznym zostawia lub likwiduje właściwy wykres. Przykład-program robaczek.m. Budowanie „od zera” obiektów graficznych i prosta animacja 4 %ROBACZEK.M %ilustracja prostej animacji przy pomocy HANDLE GRAPHICS %w połączeniu z wysokopoziomowymi poleceniami graficznymi a = 2; ile = 200; x = linspace(-a,a,ile); y = x.^2-a/2; skala = [-a:1:a]; okno = figure; set(gcf,'NumberTitle','Off','MenuBar','None','Name','Robaczek zjada parabolę'); uklad = newplot; parabola = plot(x,y,'.'); %sprawdź, co się dzieje, gdy w linijce niŜej ustawisz własność 'Erase' na 'Normal' lub 'xor' wykres = line('color','b','marker','o','Erase','Background', ... 'MarkerFace','red','MarkerSize',12,'xdata',x(1:3),'ydata',y(1:3)); set(uklad,'XLim',[-a,a],'XTick',[]); set(uklad,'YLim',[-a,a],'YTick',[]); shg; for k = 5:ile; set(wykres,'XData',x(k-4:k),'YData',y(k-4:k)); pause(0.02); drawnow; end; cla; kontrolatempa = [0.1 : 0.02: 1]; for k = kontrolatempa text(0,0,'Popatrz jak ten napis znika...',... 'FontSize',16,'FontWeight','Bold','HorizontalAlignment','Center','Color' ,[k k k]); pause(0.05); end; cla; set(uklad,'Color',[0 0 0]); set(gcf,'KeyPressFcn',... 'if double(get(okno,''CurrentCharacter''))==27,close(gcf),end'); text(0,0,'ESC ZAMYKA OKNO','Color','r','FontSize',20,... 'FontWeight','Bold','HorizontalAlignment','Center'); 5 6 Okno programu robaczek.m w czasie trwania animacji 7 8