Построение графиков и визуализация вычислений в системе MatLab

Самый простой способ для построения графика функции одной переменной y=f(x) - это предварительное формирование двух векторов одинаковой длины: век­тора значений аргументов x и вектора соответствующих им значений функции у, а затем выполнение команды plot(x, y). Выполнение команды plot(x, y)открывает графическое окно и отображает в нем график функции y(x).

Рассмотрим пример построения графика функции Построение графиков и визуализация вычислений в системе MatLab - student2.ru на отрезке [-1.5;1.5] (рис. 1.2.2-1).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-1. Команды построения графика функции Построение графиков и визуализация вычислений в системе MatLab - student2.ru

В результате выполнения команды plot(x,y)появляется графическое окно с именем Figure 1 (рис. 1.2.2-2).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-2. Графическое окно с изображением графика функции Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Переход между окнами (от командного окна к графическому окну и обратно) осуществляется с помощью комбинации клавиш <Alt+Tab> или с помощью мыши.

В общем случае, число аргументов у функции plot()не ограничивается двумя. Эта функция имеет следующий формат:

plot(x1,y1,x2,y2,...).

Таким образом, в одном графическом окне можно построить не один, а несколько графиков. Рассмотрим два способа построения в одном графическом окне трех графиков (рис. 1.2.2-3 и рис. 1.2.2-4).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-3. Использование векторов значений функций

для построения графиков трех функций

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-4. Использование матрицы значений функций

для построения графиков трех функций

Приведенные в первом и втором примерах наборы команд позволяют получить один и тот же результат (рис. 1.2.2-5.) Разница в том, что в первом примере формируются три вектора значений функций (y1, y2, y3), а во втором – матрица y, содержащая значения функций в виде столбцов.

График, выведенный в графическое окно Matlab, может быть снабжен заголовком, именами осей, дополнительным текстом, сеткой и другой поясняющей информацией. Аргументами команд, управляющими пояснениями, являются текстовые строки. Например, команда title()добавит к графику заголовок. Команда grid onпозволяет отобразить координатную сетку. Для вывода подписи осей используются команды Xlabel(), Ylabel().

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-5. Графики функций y 1=sin(x); y2=sin(2*x); y3=sin(4*x)

Если в одном графическом окне создаются несколько графиков, полезно с использованием функции legend() отобразить легенду графиков. Ее текстовые аргументы соответствуют подписям соответствующих созданию кривых, а числовой параметр определяет место расположения в графическом окне (табл. 1.2.2-1).

Таблица 1.2.2-1

Значение аргумента Размещение легенды
-1 В правом верхнем углу над областью графика
Место выбирается автоматически, чтобы не перекрывать область кривых
В правом верхнем углу (и по умолчанию)
В левом верхнем углу области графика
В левом нижнем углу области графика
В правом нижнем углу области графика

При выводе в одно графическое окно нескольких графиков удобнее каждый график выводить с использованием своей команды plot(), однако в этом случае происходит создание нового графического окна. Для того чтобы этого избежать, используется команда holdon. Эта команда позволяет расположить все в дальнейшем выводимые графики в одном окне.

При выводе графика можно сменить принятый по умолчанию Matlab цвет и тип точек, с помощью которых рисуется данный график (табл.1.2.2-2). Символы, указывающие на цвет и тип точки, заключаются в апострофы и указываются в команде plot() после имени функции.

Таблица 1.2.2-2

Символ Цвет Символ Маркер
y желтый . точка
m фиолетовый кружок :
c голубой x x-метка
r красный + плюс
g зеленый * звездочка
b синий s квадрат
w белый d алмаз
k черный v треугольник(вниз)
треугольник (вверх) - сплошная
< треугольник (влево)   точечная
> треугольник (вправо) -. штрих - пунктирная
p шестиугольник - пунктирная
h восьмиугольник    

Рассмотрим пример (рис. 1.2.2-6), в котором используются перечисленные выше опции, инструкции и функции. Результат выполнения инструкций, комментирующих графики, приведен на рис. 1.2.2-7.

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-6. Использование инструкций при построении графиков

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-7. Результат выполнения инструкций,

комментирующих графики

Большую часть вышеописанных действий можно реализовать также с помощью команд инструментальной панели графических окон (рис. 1.2.1-8).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-8. Компоненты меню графического окна

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

Трехмерные поверхности обычно описываются функцией двух переменных z(x,у).Для построения трехмерных графиков необходимо сформировать два двумерных массива, например, X и Y с использованием функции meshgrid() (рис. 1.2.2-9).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-9. Формирование двумерных массивов функцией meshgrid()

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-10. Построение различных видов графиков

функций двух переменных

Сформированные в виде двумерных массивов данные используются функциями:

· mesh(X,Y,Z) – построение сетчатого графика;

· contour(X,Y,Z)– построение графика контурных линий;

· surf(X,Y,Z) – построения графика сплошной поверхности;

· surfс(X,Y,Z) – построения графика сплошной поверхности и контурных линий;

· plot3(X,Y,Z) –построение точек, соединенных отрезками прямых и др.

Рассмотрим примеры использования перечисленных выше функций, для чего сформируем матрицу z(x,y) с использованием функции f(x,y)
(рис. 1.2.2-10).

Результатом выполнения команды mesh(x,y,z) является построение графика поверхности в виде сетки (рис. 1.2.2-11).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-11. Результат выполнения команды mesh(x,y,z)

В результате выполнения команды plot3(x,y,z) происходит построение графика поверхности, где точка соединены отрезками прямой
(рис. 1.2.2-12).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-12. Результат выполнения команды plot3(x,y,z)

Команда surf(x,y,z)выполняет построение графика сплошной поверхности (рис. 1.2.2-13).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-13. Результат выполнения команды surf(x,y,z)

Команда contour(x,y,z) позволяет получить график контурных линий (рис. 1.2.2-14).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-14. Результат выполнения команды contour(x,y,z)

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-15

Добавление команд, представленных на рис. 1.2.2-15, позволяет нанести на контурные линии значения функции в отдельных точках
(рис. 1.2.2-16).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-16. График контурных линий с

нанесенными значениями функции

Команда surfс(x,y,z)предназначена для построения графика сплошной поверхности, дополненного контурными линиями (рис. 1.2.2-17).

Построение графиков и визуализация вычислений в системе MatLab - student2.ru

Рис. 1.2.2-17. Результат выполнения команды surfс(x,y,z)

Наши рекомендации