
- •Средства программирования Практически невозможно предусмотреть в одной системе возможность решения всех задач. Поэтому программирование расширяет возможности системы matlab.
- •Основные средства программирования
- •Структура и свойства файлов сценариев
- •Тело файла с любыми выражениями
- •Структура и свойства файлов функций Файл функция – это типичный объект языка программирования системы matlab.
- •Локальные переменные могут иметь те же имена, что и глобальные.
- •Управляющие структуры
- •Выводится в командное окно. Возможны - ошибки (остановка вычислений), - предупреждения (останова нет).
- •Примеры применения операторов программирования
- •9. Графика
- •Построение графиков отрезками прямых
- •Значения строковой константы s
- •Функция plotyy (график, две оси у)
- •Отображение нескольких графиков в одном окне
- •Графика в логарифмическом масштабе
- •Столбцовые диаграммы
- •Гистограммы
- •Лестничные графики
- •Графики дискретных отсчетов функции
- •График с зонами погрешности
- •Трехмерная графика
- •Графика 3d
- •Круговые диаграммы
Графика в логарифмическом масштабе
Логарифмический масштаб используется для координатных осей X и Y.
Определены 3 функции:
loglog – логарифмический масштаб по осям х и у,
semilogx – логарифмический масштаб только по оси х и линейный по оси y,
semilogy – логарифмический масштаб только по оси y и линейный по оси х.
На рисунке представлен график функции exp(x)/x в логарифмическом масштабе. Координатная сетка строится командой grid on.
>> x=logspace(-1,3); % Аргумент x
>> loglog(x,exp(x)./x); % По осям x и y лог масштаб
>> grid on % Добавление координатной сетки
Неравномерное расположение линий координатной сетки указывает на логарифмический масштаб осей.
Столбцовые диаграммы
Функции для построения диаграмм:
bar(X, Y) – столбцовый график элементов массива Y в позициях, определяемых вектором X
bar(X) – то же, но для построения используется вектор x=1:m;
bar(X, Y, WIDTH) или bar(Y, WIDTH) – то же, но со спецификацией ширины столбцов (по умолчанию WIDTH = 0,8).
Применяются для решения задач в области финансов, экономики, математики.
Эти функции отображают данные в виде столбцов:
bar - вертикальных,
barh - горизонтальных.
В примере создаются два подокна, в левом использована функция bar, в правом barh
>> x = -2.9:0.2:2.9; % Аргумент х
>> Y= exp(-x.*x); % Функция Y
>> subplot(1,2,1); % Подокно 1 в первой строке
>> bar(Y); % Графика
>> grid on; % Включить сетку
>> subplot(1,2,2); % Подокно 2 в первой строке
>> barh(Y); % Графика
>> grid on; % Включить сетку
Гистограммы
Функция hist(y,x) – столбцовая диаграмма, показывающая число попаданий случайных у в заданный интервал х.
hist(Y) – возвращает вектор чисел попаданий для 10 интервалов, выбираемых автоматически hist(y,x)
>> x = -3:0.2:3; % Вектор х
>> y= randn(1000,1); % Случайные у
>> hist(y,x); % Гистограмма
>> grid on; % Включить сетку
Лестничные графики
Функция stairs отображает график по вычисленным значениям в ступенчатой форме с огибающей, представленной функцией y(x) . Между вычисленными точками рисуется горизонтальная линия.
>> x = -3:0.2:3; % Вектор х
>> stairs(x,x.^2); % График
>> grid on; % Включить сетку
Графики дискретных отсчетов функции
Функция stem отображает значения в виде столбиков, на вершине которых имеется маркер - кружок. Отображается и нулевая линия.
stem(Y) – строит график функции с ординатами в векторе Y в виде отсчетов;
stem(X, Y) – строит график отсчетов с ординатами в векторе Y и абсциссами в векторе X;
>> x=0:0.1:4; % Аргумент х
>> y=sin(x.^2).*exp(-x); % Функция у
>> stem(x,y); % График
>> grid on; % Включить сетку
График с зонами погрешности
Функция errorbar(x,y,e) рисует график с зонами погрешности. Линия е использует линию y, как ось. Зоны погрешности отображаются в вычисляемых точках и имеют вид вертикальных полосок с горизонтальными ограничителями в обе стороны линии y c высотой, равной модулю e.
В примере для пояснения действия функции errorbar в одном окне сначала рисуются исходные функции (y, e), а затем добавляется errorbar.
>> x=-2:0.1:2; % Вектор х
>> y=sin(x); % Функция y
>> e=rand(size(x))/10; % Функция e
>> errorbar(x,y,e); % Функция errorbar