Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект_Мат_Ч1.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.13 Mб
Скачать

Трехмерная графика

plot3(x,y,u) – используется для построения графика функции вида u(t) = f(x(t),y(t)) (при построении x, y, u – векторы одинаковой размерности). Возможен дополнительный параметр, аналогично plot.

» t=0:pi/100:6*pi;

» plot3(sin(t),cos(t),t)

Mesh-графика

Используется для визуализации матриц, слишком больших для вывода их в численном виде, а также для построения графиков функций двух переменных вида A=f(i,j) или z=f(x,y).

Первым шагом при построении графика функции двух переменных z=f(x,y), заданной таблично, является генерация соответствующих матриц X, Y с повторяющимися строками и столбцами с помощью функции meshgrid(x,y)

;

с последующим вычислением элементов матрицы Z:

.

После этого с помощью функции mesh(Z) в изометрической проекции строятся n графиков, использующих столбцы матрицы Z, и m графиков, использующих строки матрицы Z. В результате получается поверхность в виде сетки. Невидимые линии (участки графика на заднем плане, скрытые участком графика на переднем плане) не отображаются. По осям абсцисс и ординат по умолчанию откладываются соответствующие индексы матрицы Z по i и j, а при указании в качестве первых двух параметров векторов x и y – их значения.

» x=-8:.5:8; y=x;

» [X,Y]=meshgrid(x,y);

» R=sqrt(X.^2+Y.^2)+eps; % для предотвращения деления на нуль

» Z=sin(R)./R;

» mesh(Z) % Возможные варианты: mesh(x,y,Z) mesh(X,Y,Z)

Цвет участков графиков выбирается автоматически согласно палитре: участки сетки графика, на которых функция z(x,y) принимает бо’льшие значения, изображаются более теплыми цветами.

Примерно такие же графики можно получить с помощью последовательности операций:

» figure, plot3(X,Y,Z), hold on, plot3(Y,X,Z), grid on

Отличие будет состоять в следующем: 1)отображаются невидимые линии; 2) по осям абсцисс и ординат откладываются значения переменных x и y; 3) каждая выведенная линия будет иметь новый цвет (аналогично plot).

Дополнительно существует функция surf(), формат и назначение которой аналогичны функции mesh(); отличие заключается в том, что вместо сетки выводятся участки поверхностей (то есть, "клетки" закрашены).

Contour-графика

Используется для построения линий одного уровня (например, на географических картах). Графики могут быть двухмерными (функция contour) и трехмерными (contour3). Необходимо предварительное формирование матриц X, Y, Z, например, аналогично тому, как это выполнено выше.

» figure, contour(Z), grid on

» figure, contour3(Z)

По осям абсцисс и ординат в этих случаях откладываются соответствующие индексы матрицы Z. Для того, чтобы градуировка осей выполнялась в соответствии со значениями x и y, а срез функции выполнялся в n равноудаленных друг от друга уровнях, используются форматы вызова:

» figure, contour(X,Y,Z,n,linestyle)

» figure, contour3(X,Y,Z,n,linestyle)

Дополнительно может быть также указан стиль линий (см. plot).

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

В трехмерной графике возможно использование всех вспомогательных функций графики, описанных выше.

plot3 mesh

mesh с помощью plot3 surf

contour contour3