stairs(X,Y) – строит лестничный график по данным вектора Y с координатами х переходов от ступеньки к ступеньке заданными значениями элементов вектора X (они должны идти в возрастающем порядке);
stairs(…,S) – аналогична по действию вышеописанным командам, но строит график линиями, стиль которых задается строками S (см. оператор plot).
Пример:
»% Лестничный график функции x^2
»x=0:0.25:10;
»stairs(x,x.^2);
100
90
80
70
60
50
40
30
20
10
0
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
Рис. 1.5
polar |
Построение графика в полярной системе координат |
|
|
В полярной системе координат любая точка представляется как конец радиус-вектора, исходящего из начала системы координат, имеющего длину RHO и угол THETA (обычно меняется от 0 до 2 ).
Синтаксис команды:
polar(theta,rho) – строит график в полярной системе координат, представляющий собой положение конца радиус-вектора;
polar(theta,rho,S) – аналогична предыдущей команде, но позволяет задавать стиль построения аналогично оператору plot.
Пример:
» % График функции sin(5*t) в полярной системе координат
»t=0:pi/50:2*pi;
»polar(t,sin(5*t))
|
90 |
1 |
|
|
|
120 |
|
60 |
|
|
0.8 |
|
|
0.6 |
150 |
|
30 |
|
|
0.4 |
|
|
0.2 |
180 |
|
0 |
210 |
330 |
240 |
300 |
270
Рис. 1.6
compass |
Построение векторов |
|
|
Иногда желательно построение ряда радиус-векторов в их обычном виде, то есть в виде стрелок, исходящих из начала координат и имеющих угол и длину, которые определяются действительной и мнимой частями комплексных чисел, представляющих данные векторы.
Синтаксис:
compass(U,V) – сроит графики радиус-векторов с компонентами (U,V), представляющими действительную и мнимую части каждого из них;
compass(Z) – эквивалентна compass(real(Z),imag(Z));
compass(U,V,S) – аналогичны представленным выше командам, но позволяет задать спецификацию линий построения аналогично команде plot;
H=compass(…) – возвращает значения длин радиус-векторов.
Пример:
»% Построение радиус-векторов для вектора Z с комплексными
»% элементами
»Z=[-1+2i,-2-3i,2+3i,5+2i];
»compass(Z)
|
90 |
5.3852 |
|
|
|
120 |
|
60 |
|
|
4.3081 |
|
|
3.2311 |
150 |
|
30 |
|
|
2.1541 |
|
|
1.077 |
180 |
|
0 |
210 |
330 |
240 |
300 |
|
270 |
|
Рис. 1.7 |
contour |
Построение контурных графиков |
Контурные график являются попыткой отобразить на плоскости функции двух переменных вида z(x,y). Их можно представить в виде совокупности линий равного уровня, которые получаются, если трехмерная поверхность пересекается рядом плоскостей, расположенных параллельно друг другу. При этом контурный график представляет совокупность спроецированных на плоскость y(x) линий пересечения поверхности z(x,y) плоскостями.
Синтаксис:
contour(z) – строит контурный график по данным матрицы z с автоматическим диапазоном изменения x и y;
contour(x,y,z) – строит контурный график по данным матрицы z с указанием спецификаций для x и y;
contour(z,N) и contour(x,y,z,N) – дают построения аналогичные ранее описанным, с заданием N линий равного уровня (по умолчанию N = 10);
contour(z,V) и contour(x,y,z,V) – строят линии равного уровня для высот, указанных значениями элементов вектора V;
[C,H] = contour(…) – возвращает дескриптор – матрицу C и вектор столбцов H. Они используются как входные параметры для команды clabel (см. далее);
contour(…,S) – позволяет использовать перечисленные выше функции с указанием спецификации линий, аналогично команде plot.
Пример: |
|
|
|
|
» % Построение контурного графика объекта peaks |
|
|
||
» z=peaks(27); |
|
|
|
|
» contour(z,15) |
|
|
|
|
25 |
|
|
|
|
20 |
|
|
|
|
15 |
|
|
|
|
10 |
|
|
|
|
5 |
|
|
|
|
5 |
10 |
15 |
20 |
25 |
|
|
Рис. 1.8 |
|
|
comet |
|
Движение точки по плоскости |
||
Синтаксис: comet(Y) comet(X, Y) comet(X, Y, p)
Для отображения движения точки по траектории используется функция comet. При этом движущаяся точка напоминает ядро кометы с хвостом.
Функции comet(Y) и comet(X,Y) отображают движение ―кометы‖ по траектории, заданной вектором Y и векторами X и Y соответственно.
comet(X,Y,p)
аналогична предшествующим, но позволяет задавать длину хвоста кометы как p length (Y ) . По умолчанию значение p = 0,1.
На черно-белом рисунке ―хвост кометы‖ заметить трудно, поскольку он представляет собой отрезок линии с цветом, отличающимся от цвета линии основной части графика.
1.9.2. Построение графиков 3D-поверхностей
meshgrid |
Функция создания массивов трехмерной графики |
|
|
Трехмерная поверхность обычно описывается функцией двух переменных z(x,y). Специфика построения трехмерных графиков требует не просто задания ряда значений x и y, то есть векторов x и y – она требует определения двумерных массивов для X и Y матриц.
Синтаксис:
[X,Y] = meshgrid(x,y) – преобразует область, заданную векторами x и y в массивы X и Y, которые могут быть использованы для вычисления функции двух переменных и построения трехмерных графиков. Строки выходного массива X являются копиями вектора x, а столбцы Y – копиями вектора y;
meshgrid(x) – аналогична [X,Y] = meshgrid(x,x);
[X,Y,Z] = meshgrid(x,y,z) – возвращает трехмерные массивы, используемые для вычисления функций трех переменных и построения трехмерных 3D-графиков.
plot3 |
Функция построения трехмерных графиков линиями |
|
|
Синтаксис:
plot3(x,y,z) – строит массив точек, представленных векторами x, y и z, соединяя их отрезками прямых. Команда имеет ограниченное применение, т.к. строит не поверхность , а пространственную кривую;
plot3(X,Y,Z) – строит точки с координатами X(i,:), Y(i,:) b Z(i,:) и соединяет их отрезками прямой, получая таким образом трехмерную поверхность;
plot3(X,Y,Z,S) – обеспечивает аналогичные построения, но со спецификацией линий и точек, соответствующих синтаксису команды plot.
Пример:
»x=-3:0.1:3;
»y=x;
»z=x.^2+y.^2;
»subplot(2,1,1),plot3(x,y,z),grid on
»[x,y]=meshgrid(x,y);
»z=x.^2+y.^2;
»subplot(2,1,2),plot3(x,y,z),grid on