Subplot. Разбиение графического окна
Синтаксис:
Subplot(m, n, p)
Subplot(h)
Subplot(mnp)
Данная команда выполняется перед обращением к функциям построения графиков для одновременной выдачи нескольких графиков в различных частях графического окна.
Команды subplot(m, n, p), где mnp - 3 цифры, производит разбивку графического окна на несколько подокон, создавая при этом новые объекты axes; значение m указывает, на сколько частей разбивается окно по горизонтали, n - по вертикали, а p - номер подокна, куда будет выводиться очередной график. Эти же команды могут использоваться для перехода от одного подокна к другому.
Пример:
В верхней части экрана строится функция y1 = sin(x), в нижней - y2 = log(abs(y)).
x = -1:.1:1;
y1 = sin(x);
Subplot(2, 1, 1), plot(x, y1)
y2 = log(abs(y1));
Subplot(2, 1, 2), plot(x, y2)
Команда hold on включает режим сохранения текущего графика и свойств объекта axes, так что последующие команды приведут к добавлению новых графиков в графическом окне. Команда hold off выключает режим сохранения графика.
Рассмотрим пример построения графика функции у=sin x×e-x. График функции приведен на рис. 1.3.
В окне Command Window задается программа:
>> x=-5:0.5:5; % задание промежутка [-5;5] с шагом 0,5
>> plot(x,expxp(x),['R','*','-.']) % построение графика функции expxp(x) красного цвета (R), точки графика в виде снежинок (*), линии штрихпунктирные (-.)
>> grid on % задание сетки
Рис.1.3. График функции у=sin x×e-x.
Для блокировки вывода результата вычисления некоторого выражения в командное окно после него надо установить знак ;
figure; – создание нового графического окна.
disp (x) – отображение массива, без печати имени массива.
Например: disp([1 2 3]) % вывод на экран чисел 1 2 3
disp (’Text’) % вывод на экран строки Text
со списком элементарных функций можно ознакомиться, набрав команду help elfun
со списком операторов - help ops
Чтобы очистить командное окно, необходимо из меню Edit задать команду Clear Command Window
Чтобы очистить историю команд, необходимо из меню Edit задать команду Clear Command History
Целая часть числа от дробной отделяется точкой.
ЗАДАНИя на РГЗ
1. Создать функции пользователя y1=f(x) и y2=f(x), вычислить ее значение в точках х0, х1, x2. Построить график в диапазоне [a, b] с шагом k.
Варианты заданий. Таблица 1.
№ варианта | Функция y1 | Функция y2 | х0 | x1 | x2 | a | b | k |
5,5 | -8 | -10 | 0,1 | |||||
2,7 | 5,6 | -20 | -7 | 0,11 | ||||
3,1 | -2 | -4 | 0,07 | |||||
4,2 | -7,3 | 0,05 | ||||||
6,32 | 1,4 | 0,1 | ||||||
-4,7 | -0,1 | -12 | -35 | -5 | 0,05 | |||
2,3 | -10 | 0,11 | ||||||
8,2 | 1,4 | -15 | 0,1 | |||||
4,5 | -20 | 0,07 | ||||||
1,23 | -20 | 0,05 | ||||||
7,5 | -5,1 | -10 | 0,1 | |||||
3,6 | -2,4 | 7,8 | -5 | 0,05 |
2. Функция также должна выводить на экран Ф.И.О. студента, группу, вариант задания.
3. Составить программу, вычисляющую координаты точки, делящий отрезок AB в отношении n1: n2 , по формулам:
Вывести информацию в виде:
а) Отступив слева 20 позиций, вывести ответ в виде:
КООРДИНАТЫ ТОЧКИ: x= … y= …
б) Ниже вывести строку из дефисов
---------------------------------------------------
в) Пропустить 2 строки
г) Вывести заголовок:
ИСХОДНЫЕ ДАННЫЕ
д) Под заголовком вывести значения исходных данных в виде:
A=( … , … ), B=( … , … ), n1= … n2= …
4. Задать векторы V1 и V2 длиной N (таблица 2). Элементы вектора – случайные числа.
Вывести на экран V1 и V2.
− Выполнить над V1 и A операцию 1.
− Выполнить над результатом и V1 операцию 2.
− Выполнить над результатом и A операцию 3.
− Возвести почленно V1 в степень 3.
– Сложить V1 и V2.
№ варианта | Длина вектора | Операнд А | Операторы | ||
* | ./ | + | |||
/ | .\ | + | |||
- | .* | .* | |||
* | ./ | ./ | |||
/ | .* | + | |||
- | .* | ./ | |||
- | ./ | .\ | |||
* | .* | - | |||
/ | .\ | .\ | |||
- | .* | .* | |||
* | ./ | - | |||
* | .\ | .\ |
4. Задать матрицу А
5. Сгенерируйте массив В размером 3х3 со случайными элементами.
6. Выполните действия
A+10B, A*B, BT
почленно умножить А на В,
определить максимальный и минимальный элементы матрицы В.
7. Определить массив D:
8. Вывести на одном графическом окне раздельно 4 графика функций:
sin(x+v), exp(vx), x2/v, cos(x)/cos(v). V – номер варианта.
9. На одной области построения графиков вывести графики одновременно вывести графики функций: 1/sin(x*v), 2/cos(x*v). Изучить функцию Legend и с ее помощью подписать кривые.
Контрольные вопросы
1. Структура окна редактора MatLab.
2. Правила ввода команд.
3. Правила ввода функций и операндов.
4. Правила ввода выражений.
5. Организация циклов.
6. Правила ввода комментариев.
7. Правила просмотра результатов операций.
8. Правила создания двумерных графиков.
9. Запуск и отладка программ.
10. Как изменить на экране формат вывода числа?
11. Как можно просмотреть в MATLAB список всех элементарных математических функций?
12. Какие виды функций в MATLAB Вам известны?
13. Опишите способы создания одномерных массивов в MATLAB.
14. Опишите способы создания двумерных массивов в MATLAB.
15. Перечислите и объясните действие операторов, используемых при вычислениях с массивами.
16. Как построить несколько графиков в одной системе координат?
17. Как построить графики в разных подобластях одного графического окна?
18. Как изменить цвет и стиль линий на графиках?
19. Как сделать надписи на осях, на полученном рисунке? Как сделать заголовок для графика?
20. Что такое m-файлы? Как создать, сохранить и вызвать m-файл?