MatLab część IV 1
Elementy okna MatLab-a 2
Elementy okna MatLab-a 3
Wykresy i przydatne polecenia Wywoł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 hold uż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) 4
Polecenie plot Najprostsza składnia: plot(x,y,s) x i y są wektorami jednakowej długości, reprezentującymi współrzędne punktów na wykresie s 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 y jeżeli y jest macierzą, to wykreślonych zostanie na wykresie tyle serii, ile jest kolumn macierzy y jeż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,...) 5
Parametry graficzne Parametry 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ędzie znacznik:. (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 w (ostatni jest biały) Parametry te można dowolnie permutować w łańcuchu s 6
Dodatkowe parametry graficzne Umieszczamy 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> 7
Dodatkowe elementy wykresu Tytuł: 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 8
Specyficzne funkcje kreślące Wykresy o osiach w skali logarytmicznej (prametry funkcji jak dla polecenia plot: loglog obie osie logarytmiczne semilogx, semilogy oś X lub Y logarytmiczna Linie i figury: line linia łamana fill 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 9
Funkcje kreślące w 3D Odmiany funkcji kreślących w 2D: plot3, line(x,y,z), fill3, scatter3 więcej: help itd. Wykresy powierzchniowe: są to wykresy x,y,z, gdzie z opisuje kształt powierzchni rozpiętej nad płaszczyzną XY aby móc je wykonać, należy przygotować siatkę współrzędnych XY za pomocą funkcji meshgrid 10
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 m X i Y są tablicami współrzędnych odpowiednio o wymiarach m n i n m X jest wypełnione wierszami x, Y jest wypełnione kolumnami y Z określamy jako funkcję na X i Y (a nie na x i y!) 11
Wykres siatkowy Składnia: mesh(x,y,z) 12
Wykres powierzchniowy Składnia: surf(x,y,z) 13
Cieniowanie powierzchni Cieniowanie zmieniamy poleceniem shading domyślną wartością shading jest faceted (efekt jak na poprzednim slajdzie) inne parametry: shading flat shading interp 14
Oświetlenie powierzchni Dla 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] 15
Skala barw Skalę 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]) 16