MatLab надає можливість отримувати різні типи контурних графіків за допомогою функцій contour і contourf. Розглянемо їх можливості на прикладі функції.
.
Використання contour з трьома аргументами
» contour(X,Y,Z)
призводить до графіку, на якому показано лінії рівня на площині xy, але без вказівки числових значень на них. Такий графік є малоінформативним, він не дозволяє дізнатися значення функції на кожній з ліній рівня. Використання команди colorbar також не дозволить точно визначити значення функції. Кожну лінію рівня можна забезпечити значенням, яке приймає на ній досліджувана функція, за допомогою певної в MatLab функції clabel. Функція clabel викликається з двома аргументами: матрицею, що містить інформацію про лініях рівня і вказівником на графік, на якому слід нанести розмітку. Користувачеві не потрібно самому створювати аргументи clabel. Функція contour, викликана з двома вихідними параметрами, не тільки будує лінії рівня, але і знаходить необхідні для clabel параметри. Використовуйте contour з вихідними аргументами CMatr і h (в масиві CMatr міститься інформація про лініях рівня, а в масиві h - покажчики). Завершіть виклик contour крапкою з комою для придушення виводу на екран значень вихідних параметрів і нанесіть на графік сітку:
» [CMatr, h] = contour(X, Y, Z);
» clabel(CMatr, h)
» grid on
Додатковим аргументом функції contour (так ж, як і contour3, описаної вище) може бути або число ліній рівня, або вектор, що містить значення функції, для яких потрібно побудувати лінії рівня.
Наочну інформацію про зміну функції дає заливка прямокутника на площині xyкольором, залежних від значення функції в точках площині. Для побудови таких графіків призначена функція contourf, використання якої не відрізняється від застосування contour. У наступному прикладі виводиться графік, який складається з двадцяти ліній рівня, а проміжки між ними заповнені квітами, відповідними значеннями досліджуваної функції:
» contourf(X, Y, Z, 20)
» colorbar