
- •Программное обеспечение управления качеством и базы и банки данных matlab
- •Matlab в роли суперкалькулятора
- •Основные арифметичесике операторы
- •Специальные символы
- •Начальное значение:шаг:конечное значение
- •Форматы чисел
- •Перестановки элементов матриц
- •Cуммирование элементов
- •Решение систем линейных уравнений
- •Численное интегрирование
- •Объединение массивов
- •Нахождение средних, срединных значений массива и стандартных отклонний
- •Вычисление коэффициентов корреляции
- •Вычисление матрицы ковариации
- •Основы программирования
- •Условный оператор
- •Циклы типа for…end
- •Графики в логарифмическом и полулогарифмическом масштабе
- •Столбцовые диаграммы
- •Построение гистограммы
- •Графики с зонами погрешностей
- •Графики в полярной системе координат
- •Контурные графики
- •Создание массивов данных для трехмерной графики
- •Сетчатые 3d-графики с окраской и с проекциями
- •Построение поверхности с окраской и проекциями
- •Построение освещенной поверхности
- •Трехмерные контурные графики
- •Ввод текста в любое место графика
- •Вывод пояснений
- •Управление свойствами осей графиков
Сетчатые 3d-графики с окраской и с проекциями
mesh(X, Y, Z, C) выводит в графическом окне сетчатую поверхность Z(X, Y) с цветами узлов поверхности, заданными массивом С;
mesh(X, Y, Z) – аналог предшествующей коман-ды при C= Z. В данном случае используется фун-кциональная окраска, при которой цвет задается высотой поверхности.
Пример: >> [X, Y]=meshgrid([-3:0.15:3]);
>> Z=X.^2+Y.^2;
>> mesh(X, Y, Z)
MATLAB имеет несколько графических фун-кций, возвращающих матричный образ трехмерных поверхностей. Например, функция peaks(N) возвращает образ поверхности с рядом пиков и впадин. Такие функции удобно использовать для проверки работы графических команд трехмерной графики
>> % Пример построения поверхности, описанной функцией peaks
>> Z=peaks(25);
>> mesh(Z)
Иногда график трехмерной поверхности полезно объединить с контурным графиком ее проекции на плоскость, расположенным под поверхностью. Для этого используется команда meshс:
meshс(. . .) аналогична mesh(. . .), но помимо графика трехмерной поверхности дает изобра-жение ее проекции на плоскость в виде линий равного уровня (графика типа contour).
Пример.
>> [X, Y]=meshgrid([-3:0.15:3]);
>> Z=X.^2+Y.^2;
>> meshc(X, Y, Z)
Построение поверхности с окраской и проекциями
О
Для построения таких поверхностей использует-ся команда класса surf(. . .) аналогичная mesh(. . .).
Рассмотрим простой пример построения трехмер-ной поверхности – параболоида:
>> [X, Y]=meshgrid([-3:0.15:3]);
>> Z=X.^2+Y.^2;
>> surf(X, Y, Z)
В следующем примере используется функцио-нальная окраска оттенками серого цвета с выводом шкалы цветовых оттенков:
>> % Построение 3D-поверхности с функциональной окраской ячееек типа grayscale и
>> % выводом шкалы цветовых оттенков с плавными переходами
>> [X, Y]=meshgrid([-3:0.15:3]);
>> Z=sin(X)./(X.^2+Y.^2+0.3);
>> surf(X, Y, Z)
>> colormap(gray)
>> shading interp
>> colorbar
В этом примере команда colormap(gray) задает окраску оттенками серого цвета, а команда shading interp обеспечивает устранение изображения сетки и задает интерполяцию для оттенков цвета объемной поверхности.
Обычно применение интерполяции придает трехмерным поверхностям и фигурам более реалистичный вид, но фигуры каркасного вида дают более точные количественные данные о каждой точке.
Для повышения наглядности представления трехмерных графиков можно использовать дополнительный график линий равного уровня, получаемый путем проецирования поверхности на опарную плоскость графика (под поверхностью). Для этого используется команда surfс:
surfс(. . .) аналогична команде surf(. . .), но обеспечивает дополнительное построение контурного графика проекции фигуры на опорную плоскость.
Пример: >> [X, Y]=meshgrid([-3:0.15:3]);
>> Z=sin(X)./(X.^2+Y.^2+0.3);
>> surfc(X, Y, Z)