Ис п о л ь з о в а н и е фу н к ц и и plot3 б е з mesh
20 |
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
4 |
2 |
|
|
|
|
|
|
|
4 |
|
0 |
|
|
|
|
|
2 |
||
|
|
-2 |
|
|
-2 |
0 |
|
||
|
|
|
|
|
|
|
|||
|
|
|
-4 |
-4 |
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
Ис п о л ь з о в а н и е фу н к ц и и plot3 п о с л е mes |
|||||||
20 |
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
4 |
2 |
|
|
|
|
|
|
|
4 |
|
0 |
|
|
|
|
|
2 |
||
|
|
-2 |
|
|
-2 |
0 |
|
||
|
|
|
|
|
|
|
|||
|
|
|
-4 |
-4 |
|
|
|
||
|
|
|
|
|
|
|
|
||
Рис. 1.9 |
|
|
|
|
|
|
|
|
|
mesh |
|
Сеточные 3D-графики с функциональной окраской |
|||||||
Наиболее представительными и наглядными являются сеточные графики трехмерных поверхностей с заданной или функциональной окраской.
Синтаксис:
mesh(X,Y,Z) – выводит в графическое окно сетчатую поверхность Z(X,Y) с функциональной окраской, при которой цвет задается высотой поверхности.
Возможна также форма mesh(Z);
meshc(…) – по синтаксису аналогична предыдущим, но строит график поверхности, объединенный с проекциями линий равного уровня (графика типа contour);
meshz(…) – аналогичный синтаксис, но строит поверхность в виде столбиков.
Пример:
»[x,y]=meshgrid([-3:0.1:3]);
»z=x.^2+y.^2;
»subplot(2,1,1),mesh(x,y,z)
»subplot(2,1,2),meshc(x,y,z)
Рис. 1.10
surf |
Затененные сеточные 3D-графики |
|
|
Синтаксис:
surf(X, Y, Z, C) вывод на экран сетчатой поверхности для значений массива Z, определенных на множестве значений массивов X и Y. Цвет массива определяется массивом C;
surf(Z, C)
использует сетку, которая определяется одномерными массивами х = 1: n и y = 1: m;
surf(X, Y, Z) и surf(Z) используют в качестве массива цвета C = Z, то есть цвет в этом случае пропорционален высоте поверхности;
surf – возвращает свойства объекта surface.
Благодаря функциональной окраске график поверхности гораздо более выразителен, чем при построении поверхности функцией mesh, причем даже в том случае, когда цветной график печатается в черно-белом виде (в этом случае лучше использовать функцию colormap(gray), выполняющую окраску фигуры в тонах серого цвета).
1.9.3. Вспомогательные графические функции
figure |
Активизация графического окна |
|
|
Синтаксис:
figure(n) данная команда делает активным графическое окно с номером n (если такое окно существует) или создает пустое графическое окно.
axis |
Масштабирование осей и вывод на экран |
|
|
Синтаксис:
axis([xmin xmax ymin ymax]) axis(‗auto‘)
axis(axis) axis(‗square‘) axis(‗equal‘)
axis([xmin xmax ymin ymax]) устанавливает масштаб по осям x, y для активного графического окна (для трехмерных графиков добавятся аргументы zmin и zmax).
axis(‗auto‘)
возвращает масштаб по осям к исходным значениям (принятым по умолчанию).
axis(axis)
фиксирует текущие значения масштабов по осям для последующих графиков.
axis(‗square‘)
устанавливает одинаковый диапазон изменения переменных по осям.
axis(‗equal‘) устанавливает масштаб, который обеспечивает одинаковые расстояния между метками по осям x и y.
grid |
Нанесение сетки |
|
|
Синтаксис:
grid on наносит координатную сетку на текущие оси; grid off удаляет координатную сетку;
grid выполняет роль переключателя с одной функции на другую.
hold |
Управление режимом сохранения текущего окна |
Синтаксис:
hold on
включает режим сохранения текущего графика и свойств объекта axis, так что последующие команды приведет к добавлению новых графиков в активном графическом окне;
hold off выключает режим сохранения текущего графика; hold реализует переключение с одного режима на другой.
subplot |
Разбиение графического окна |
Синтаксис:
subplot(mnp)
данная команда выполняется перед обращение к функциям построения графиков для одновременной выдачи нескольких графиков (каждый со своим объектом axis) в различных частях графического окна. значение m указывает, на сколько частей разбивается окно по горизонтали, n
по вертикали, а р
номер позиции, куда будет выводиться очередной график.
Эта же команда используется для перехода от одного подокна к другому. Пример:
»x=-1:0.1:1;
»y1=sin(x);
»subplot(211),plot(x,y1)
»y2=log(abs(y1));
Warning: Log of zero.
»subplot(212),plot(x,y2)
1 |
|
|
|
|
|
|
|
|
|
|
0.5 |
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
-0.5 |
|
|
|
|
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
|
|
|
|
-1 |
-0.8 |
-0.6 |
-0.4 |
-0.2 |
0 |
0.2 |
0.4 |
0.6 |
0.8 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
-0.5 |
|
|
|
|
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
|
|
|
|
-1.5 |
|
|
|
|
|
|
|
|
|
|
-2 |
|
|
|
|
|
|
|
|
|
|
-2.5 |
|
|
|
|
|
|
|
|
|
|
-1 |
-0.8 |
-0.6 |
-0.4 |
-0.2 |
0 |
0.2 |
0.4 |
0.6 |
0.8 |
1 |
|
|
|
|
|
Рис. 1.11 |
|
|
|
|
|
zoom |
Увеличение масштабов графика |
|
|
Синтаксис:
zoom on (off)
включает (выключает) режим масштабирования активного графика. Удерживая ЛКМ вы можете выделить интересующую Вас область графика, которая будет увеличена затем до размеров текущего графического окна;
zoom out возвращает график в исходное положение.
1.9.4. Надписи и пояснения к графикам
title |
Установка титульной надписи |
|
|
Синтаксис: title('<текст>')
Команда title('<текст>') размещает текст над 2D- и 3D-графиком.
xlabel, ylabel, zlabel |
Установка осевых надписей |
|
|
Синтаксис: xlabel('<текст>') ylabel('<текст>') zlabel ('<текст>')
xlabel('<текст>') помещает текст для двумерного графика вдоль оси х, для трехмерного графика - вдоль оси х либо под графиком.
ylabel('<текст>') помещает текст для двумерного графика вдоль оси у, для трехмерного графика - вдоль оси у либо под графиком.
zlabel ('<текст>') помещает текст вдоль оси z трехмерного графика. Повторное использование команды приводит к замене старого текста
новым.