![]() ![]() ![]() ![]() ![]()
Раздел: Документация
0 ... 48 49 50 51 52 53 54 ... 365 ![]() Рис. 3.26. График функции, заданной кусочным образом (разные цвета и маркеры ветвей) Можно поступить и по-другому — построить графики трех ветвей, как три различные функции, каждую своим цветом и маркером: » plot(xl, yl, r+, х2, у2, кх, хЗ, уЗ, bsl В этом случае график имеет более наглядный вид. т. к. каждая ветвь функции отображается своим цветом (рис. 3.26). Графики функций двух переменных MATLAB предоставляет различные способы визуализации функций двух переменных — построение трехмерных графиков и линий уровня, параметрически заданных линий и поверхностен. Трехмерные графики функций В главе 2 был разобран простой пример построения трехмерного графика при помощи функции mesh. Напомним, что для отображения функции двух переменных следует: 1.Сгенерировать матрицы с координатами узлов сетки на прямоугольной области определения функции. 2.Вычислить функцию в узлах сетки и записать полученные значения в матрицу. 3.Использовать одну из графических функций MATLAB, например, mesh. 4.Нанести на график дополнительную информацию, в частности, соответствие цветов значениям функции. Сетка генерируется функцией meshgrid, вызываемой с двумя входными и двумя выходными аргументами. Входными аргументами являются векторы, элементы которых соответствуют сетке на прямоугольной области построения функции. Если область построения функции — квадрат и шаг сетки по обоим направлениям одинаков, то допустимо указать один аргумент, например: [х, y] = meshgrid(-i:0.05:1). Выходными аргументами являются матрицы с абсциссами и ординатами узлов сетки. Как было объяснено в главе 2, их структура влечет необходимость использования поэлементных операций при вычислении матрицы со значениями функции в узлах сетки. Изучим основные возможности, предоставляемые MATLAB для визуализации функций двух переменных, на примере построения графика z(x, у) = 4 sin 27U cos 1.57ту - (1 - л2) у - (1 - у) на прямоугольной области определения ,ve[-l, l], ye[0, 1]. Подготовьте матрицы с координатами узлов сетки и значениями функции: » [X, Y] = meshgrid(-1:0.05:1, 0:0.05:1); » Z = 4*sin(2*pi*X),*cos(1.5*pi*Y).Ml - Х.Л2).*Y.*(1 - Y); Для построения каркасной поверхности, изображенной на рис. 3.27, используется функция mesh, вызываемая с тремя аргументами » mesh(X, Y, Z) ![]() Рис. 3.27. Каркасная поверхность (mesh) Примечание п Интерфейс функции mesh и аналогичных ей графических функций, которые описаны ниже, достаточно гибок. Кроме приведенного способа обращения к mesh с тремя входными аргументами (матрицами), допускается также ряд других. В частности, если указан только один входной аргумент— матрица, то на осях абсцисс и ординат откладываются значения, соответственно, столбцевых и строчных индексов ее элементов. Вместо номеров строк и столбцов можно указать векторы, состоящие из требуемых чисел. Эти векторы задаются в первых двух входных аргументах, а матрица — в третьем. Цвет линий поверхности соответствует значениям функции. По умолчанию рисуется только видимая часть поверхности. При помощи команды hidden off можно сделать каркасную поверхность "прозрачной", добавив 0 ... 48 49 50 51 52 53 54 ... 365 |