MatLab część IV - vistula.pk.edu.plvistula.pk.edu.pl/IPP/MatLab4.pdf · MatLab część IV. 2...
Transcript of MatLab część IV - vistula.pk.edu.plvistula.pk.edu.pl/IPP/MatLab4.pdf · MatLab część IV. 2...
4
Wykresy i przydatne poleceniaWywołanie funkcji graficznej powoduje automatyczne otwarcie okna graficznego
Kolejne instrukcje graficzne powodują wymazanie poprzedniej zawartości okna – aby tego uniknąć, można:
włączyć kolejne okno graficzne poleceniem figure (przełączanie pomiędzy oknami poleceniami: figure(1) figure(2) figure(n))zablokować wymazywanie okna graficznego poleceniem hold on (odblokowanie poleceniem hold off); więcej help holdużyć polecenia dzielącego okno graficzne na podokna: subplot(w,k,nr), gdzie w,k liczba wierszy i kolumn podwykresów, nr numer podwykresu (numeracja kolejno wierszami od lewej do prawej)
5
Polecenie plotNajprostsza składnia: plot(x,y,s)
x i y są wektorami jednakowej długości, reprezentującymi współrzędne punktów na wykresies jest łańcuchem znakowym definiującym parametry graficzne wykresu – jeśli zostanie pominięty, to wykreślona zostanie linia łamana ciągła o wierzchołkach w punktach zdefiniowanych przez x i yjeżeli y jest macierzą, to wykreślonych zostanie na wykresie tyle serii, ile jest kolumn macierzy yjeżeli pominięty zostanie wektor x, to jako rzędne zostaną przyjęte indeksy elementów macierzy y
Wprowadzenie na wykres kilku serii niezależnych: plot(x1,y1,s1,x2,y2,s2,...)
6
Parametry graficzneParametry graficzne podawane są w postaci łańcucha znakowego, w którym określamy rodzaj linii, kolor oraz kształt znacznika punktu:
linia: - (ciągła), : (kropkowana), -- (kreskowana), -. (kreska-kropka); jeśli pominiemy ten element, a jest podany znacznik punktu, to linii nie będzieznacznik: . (punkt ∙), o (kółko ○), x (krzyżyk ×), + (jak widać), * (j.w.), s (kwadrat □), d (diament ◊), p (pentagram ), h (heksagram ), v ^ < > (trójkąty)kolory: c m y k r g b ww (ostatni jest biały)
Parametry te można dowolnie permutować w łańcuchu s
7
Dodatkowe parametry graficzneUmieszczamy je za łancuchem parametrów graficznych:plot(x,y,s,par1, wart1,par2,war2,...) – par_n podajemy jako łańcuch znakowy
'LineWidth',pt – grubość linii; pt – w punktach'MarkerSize',pt – wielkość znaku; pt – w punktach'MarkerFaceColor','zn' – kolor wnętrza znaku; zn – symbol koloru jak w łańcuchu s'MarkerEdgeColor','zn' – kolor krawędzi znaku; zn – symbol koloru jak w łańcuchu s'Color',[r g b] – kolor podawany jako trójka liczb w przestrzeni RGB (czerwień, zieleń, niebieski) – wartości r g b w zakresie <0,1>
8
Dodatkowe elementy wykresuTytuł: title('To jest tytuł')
Opis osi: xlabel('opis osi X'); podobnie: ylabel, zlabel
Tekst na wykresie: text(x,y,'Tekst na wykresie') – x, y oznaczają współrzędne tekstu na wykresie
Legenda: legend('opis1','opis2',...) – opisy w kolejności kreślenia serii
Siatka: grid on (włączona), grid off (wyłączona)
Zakres osi: axis([xmin, xmax, ymin, ymax, zmin, zmax]) – trzeba podać wszystkie liczby (nawet te, których nie zmieniamy); dla wykresu 2D pomijamy z
Zakres pojedynczej osi: xlim([xmin, xmax]); podobnie: xlim, zlim
9
Specyficzne funkcje kreśląceWykresy o osiach w skali logarytmicznej (prametry funkcji jak dla polecenia plot:
loglog – obie osie logarytmicznesemilogx, semilogy – oś X lub Y logarytmiczna
Linie i figury:line – linia łamanafill – wielokąt zamknięty linią łamaną i wypełniony
Funkcja kreśląca gładkie wykresy funkcji zdefiniowanej w łańcuchu znakowym 'funkcja' w zakresie od xmin do xmax: fplot('funkcja',[xmin xmax])
Punkty rozproszone na płaszczyźnie XY: scatter(x,y,s,c) – x,y wektory tej samej długości, s powierzchnia znaku w pt^2, c kolor znaku; więcej help scatter
10
Funkcje kreślące w 3DOdmiany funkcji kreślących w 2D:
plot3, line(x,y,z), fill3, scatter3więcej: help itd.
Wykresy powierzchniowe:są to wykresy x,y,z, gdzie z opisuje kształt powierzchni rozpiętej nad płaszczyzną XYaby móc je wykonać, należy przygotować siatkę współrzędnych XY za pomocą funkcji meshgrid
11
Wykresy powierzchniowe – przygotowanie
Składnia meshgrid: [X,Y]=meshgrid(x,y)x i y są wektorami współrzędnych odpowiednio o długościach n i mX i Y są tablicami współrzędnych odpowiednio o wymiarach m×n i n×mX jest wypełnione wierszami x, Y jest wypełnione kolumnami yZ określamy jako funkcję na X i Y (a nie na x i y !)
14
Cieniowanie powierzchniCieniowanie zmieniamy poleceniem shading
domyślną wartością shading jest faceted (efekt jak na poprzednim slajdzie)inne parametry:
shading flat shading interp
15
Oświetlenie powierzchniDla surf oświetlenie (gradient barw) biegnie pionowo z góry na dół
Jeśli chcemy zmienić kierunek oświetlenia (gradientu barw), zamiast funkcji surf trzeba użyć funkcji surfl
składnia: surfl(X,Y,Z,s)wektor s określa punkt, z którego pada światło
➄ w postaci wektora współrzędnych s=[sx sy sz]➄ w postaci współrzędnych kątowych (w stopniach)
s=[Azymut Wzniesienie]
16
Skala barwSkalę gradientu barw można zmieniać za pomocą polecenia colormap(skala)
Parametr skala podajemy w postaci łańcucha znakowego (tzn. w apostrofach)
Dostępne parametry: hot cool copper flag gray hsv jet pink prism
Skala barw jest zdefiniowana w przestrzeni RGB i ma 64 poziomy, można więc zdefiniować własną skalę jako tablicę o wymiarach 64×3 i wartościach elementów z zakresu <0,1>
Jeżeli chcemy zawęzić gradient barw tylko do pewnych wartości z, to należy użyć funkcji caxis([zmin zmax]) lub surfc([zmin zmax])