Хелпикс

Главная

Контакты

Случайная статья





axis( [ xmin, xmax, ymin, ymax, zmin, zmax ] )



 

Урок 4 Вращение трехмерных графиков и положение точки обзора

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

axis( [ xmin, xmax, ymin, ymax, zmin, zmax ] )

Работают также и уже знакомые функции text, xlabel, ylabel, zlabel, title, а о наносить отметки на оси координат позволяет функция set. С помощью функции subplot можно разместить в графическом окне несколько трёхмерных графиков.

Новыми в трехмерном случае являются функции meshz, meshc и surfc. Суффикс «z» позволяет строить график с «пьедесталом». Например:

[X,Y] = meshgrid( -2 : 0.1 : 2 );

Z = X .* exp( - X.^2 - Y.^2 );

meshz( X, Y, Z )

Рис.1

Суффикс «c» дает возможность отображать не только сам график, но и линии уровней:

[X,Y,Z] = peaks(30); surfc(X,Y,Z);

colormap( hsv ); axis([-3 3 -3 3 -10 5]);

Данный код позволит получить следующую картину:

Рис.2

Функция peaks (масштабированная комбинация стандартных гауссовых функций) применяется в справочной системе MATLAB для наглядной иллюстрации графических функций.

В трехмерном случае существует возможность менять положение условной камеры, то есть точки, откуда идет наблюдение за графиком. Положение этой точки определяют азимут (чаще всего обозначенный az) и угол возвышения (чаще всего el). При изменении первого параметра условно вращается плоскость xOy вокруг оси Oz против часовой стрелки. Угол возвышения определяет угол между направлением на камеру и плоскостью xOy.

По умолчанию при исполнении функций mesh и surf параметры точки обзора равны: az = -37.5°, el = 30°. Изменить их позволяет функция:

view( [ az , el ] )

К примеру:

X .* exp( - X.^2 - Y.^2 )

view( [ -15 , 20 ] )

В этом случае график примет вид:

Рис.3

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.