Материал: Matlab. Практический подход. Самоучитель

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Самоучитель Matlab

Рис. 2.30. Ввод меток контурных линий в ручном режиме

Рис. 2.31. Контурный график с заливкой области графика

76

Глава 2. Графика в Matlab

в котором, в интерактивном режиме пользователем, с помощью мыши, определяется место размещения меток для контурных линий. Процедуру выбора места для меток контурных линий иллюстрирует рис. 2.30.

На контурной линии выбирается место, и после щелчка мышью там появляется метка (подпись) со значением функции, соответствующим выбранной контурной линии. Для прекращения ввода меток достаточно нажать клавишу <Enter> или щелкнуть мышкой вне области рисунка.

Для отображения контурного графика с заливкой области графика цветом используют функцию contourf(). На рис. 2.31 приведен пример создания контурного графика с помощью команды contourf(X,Y,Z).

Способ использования функции contourf() аналогичен к функции contour(). Например, на рис. 2.32 представлен контурный график, который создается командой contourf(X,Y,Z,30).

Рис. 2.32. Контурный график с заливкой и увеличенным количеством контурных линий

В данном случае третьим аргументом указывается количество значений функции, для которых строятся контурные линии. Командой contourf(X,Y,Z,vals) (где вектор vals такой же, как и в рассмотренном выше примере) создается контурный график (с заливкой цветом) с контурными линиями для значений, определяемых третьим аргументом – вектором vals (рис. 2.33).

77

Самоучитель Matlab

Рис. 2.33. Контурный график с заливкой и контурными линиями для предопределенных значений функции

Рис. 2.34. Контурный график с заливкой и отображением подписей для контурных линий

78

Глава 2. Графика в Matlab

Точно так же, как отображаются метки для контурных линий в случае использования функции contour(), выполняется отображение меток для контурных линий заполненного цветом контурного графика (рис. 2.34).

В данном случае использовались следующие команды:

>>[C,h]=contourf(X,Y,Z,[-0.5 -0.1 0 0.1 0.3]);

>>clabel(C,h)

Отметим также, что при выполнении заливки цветом в контурных графиках (и не только) полезной может быть функция colormap(). Она позволяет изменить используемую по умолчанию цветовую палитру. Аргументом функции могут указываться, кроме прочего, следующие ключевые слова: jet, hsv, hot, cool, spring, summer, autumn, winter, gray, bone, copper, pink и lines. Каждое из этих ключевых слов соответствует предопределенной цветовой палитре. Желающие изучить этот вопрос подробно могут обратиться к справочной системе Matlab или поэкспериментировать с рабочими документами. Для перехода к используемой по умолчанию цветовой палитре воспользуемся командой colormap('default').

Создание трехмерных графиков

- Крупное дело?

- Давно такого не было!

К/ф "Приключения Шерлока Холмса и доктора Ватсона. Собака Баскервилей"

Трехмерные поверхности создаются с помощью функции mesh(). Аргументы функции (узловые точки и значения функции в этих точках) определяются так же, как и для рассмотренных выше функций contour() и contourf(). На рис. 2.35 представлена поверхность для той же функциональной зависимости по тем же базовым точкам, для которой выше строились контурные графики.

Для создания поверхности использовалась команда mesh(X,Y,Z). При этом поверхность отображается в виде сетки. У функции mesh() существуют модификации: функции meshc() и meshz(). Функция meshc() позволяет одновременно с трехмерной поверхностью строить в горизонтальной координатной плоскости контурный график, как показано на рис. 2.36.

График построен с помощью команды meshc(X,Y,Z). В таком (то есть в режиме отображения кроме трехмерной поверхности еще и контурных линий) обычно бывает легче анализировать представленные в графическом виде зависимости, поскольку фактически для одной и той же функциональной зависимости отображается сразу два графика: пространственная поверхность и контурный график.

79

Самоучитель Matlab

Рис. 2.35. Трехмерная поверхность (сетка)

Рис. 2.36. Трехмерная поверхность и контурные линии

80

Источник: https://studfile.net/preview/16433384/