Załóżmy, że zadanie polega na narysowaniu wykresu funkcji kwadratowej . Do wygenerowania wykresu potrzebujemy dziedziny oraz zbioru wartości. Także na początek określimy dziedzinę funkcji. Przypuśćmy, że w tym przypadku wygenerujemy funkcję dla zakresu . W tym celu generujemy wektor z wymienionymi wartościami:
Jak wiadomo funkcja to przyporządkowanie każdemu elementowi dziedziny dokładnie jednego elementu ze zbioru wartości. Także możemy przyjąć, że zbiór wartości jest równy dziedzinie, a następnie każdy element odpowiednio zmodyfikować. Tutaj chcąc wygenerować zbiór wartości wygenerujemy trzy nowe wektory: jeden z wartościami , drugi -3x, a ostatni tą samą wartością -5. Następnie dodając wszystko otrzymamy zbiór wartości:
Tworzymy wektory: W1 zawiera każdy element dziedziny podniesiony do kwadratu, W2 - zawiera każdy element dziedziny pomnożony przez -3. Z kolei W3 zawiera same -5. Do generowania list oraz macierzy bardzo przydatna jest funkcja repmat(). Pozwala na wygenerowanie dowolnej macierzy o domyślnej dowolnej wartości. Kolejne argumenty to domyślna wartość, ilość wierszy, ilość kolumn. W przypadku nie podania trzeciego argumentu otrzymujemy macierz o wymiarach n x n, gdzie n ma wartość taką jak drugi podany argument. Wracając do generowania wykresu: ZW to lista wartości, która jest sumą W1, W2 i W3. Jest to już wektor, który zawiera zbiór wartości funkcji. Teraz wystarczy już wywołać funkcję plot() z odpowiednimi parametrami.
Wykres faktycznie przedstawia parabolę, ale jest wyjątkowo kanciasty. Rozwiązaniem tego problemu jest zwiększenie ilości danych w dziedzinie. Wtedy, mimo że program między kolejnymi dwoma punktami będzie prowadził linie prostą, będzie można mieć wrażenie, że tak nie jest. Spróbujmy wygenerować teraz dziedzinę i zbiór wartości z dokładnością do jednego miejsca po przecinku:
Dodanie dodatkowych wartości spowodowało, że wykres wygląda znacznie lepiej. Dalsze zwiększanie ma sens tylko wtedy, gdy wykres wciąż jest kanciasty. Inaczej dodawanie kolejnych punktów nie wpłynie na jakość, a z pewnością obniży wydajność co wydłuży czas oczekiwania na wykres. Spróbujmy teraz uprościć proces generowania zbioru wartości. Naszym celem jest usunięcie potrzeby używania aż pięciu zmiennych - zostawimy tylko wektor reprezentujący dziedzinę oraz wektor reprezentujący zbiór wartości:
W ten sposób kolejne obliczenia są widoczne i nie ma potrzeby głowienia się gdzie zgubiliśmy jakąś wartość, albo co reprezentował wektor WX.
W przypadku generowania funkcji trygonometrycznych należy pamiętać, że istnieje stała pi, którą możemy użyć w dowolnych obliczeniach:
pi jest traktowane jako wyrażenie, dlatego należy pamiętać, że zapis
Dodawanie kilku serii do wykresu może być bardzo niewygodne w przypadku wpisywania wszystkich w jednej linijce, a jak wiadomo w przypadku kolejnego wywołania funkcji plot() stary wykres zostaje wymazany i nie zostaje po nim żaden ślad. Rozwiązaniem tego problemu jest skorzystanie z funkcji hold(). Przypuśćmy, że początkowo wygenerowaliśmy wykres dla funkcji cosinus, podpisaliśmy wszystkie miejsca zerowe, dodaliśmy komentarze i chcieliśmy dorysować wykres funkcji sinus:
Określiliśmy dziedzinę i wygenerowaliśmy wykres funkcji cosinus. Chcąc dorysować inny wykres używamy funkcji hold i ją włączamy podając wartość
W celu lepszego zrozumienia działania funkcji wyjaśnię poniższy kod:
Włączamy buforowanie wyników. W tej chwili jeśli jest wygenerowany wykres zostanie dorysowany do niego wykres funkcji cosinus (czerwoną kreską), a potem funkcji sinus (niebieską, przerywaną kreską). Potem narysowaliśmy wykres funkcji sinus czerwoną kreską. Nie usunęło to poprzedniej serii funkcji sinus, ale ją przykryło. Można to stwierdzić włączając Widok legendy. Następnie wyłączyliśmy buforowanie, więc ostatnia linijka spowoduje usunięcie dotychczasowego wykresu i narysowanie funkcji cosinus niebieską kreską.
Zalecam wykonanie poleceń bez zaglądania do artykułu. Wskazówka: Każdy podpunkt odpowiada dokładnie jednemu poleceniu!
Przy pomocy zdobytej wiedzy narysuj wykres funkcji cosinus w przedziale . Zaznacz miejsca dla których przy pomocy czerwonych plusów.