|
исходного массива |
|
|
|
|
|
max(x) |
Определение наибольшего элемента массива. В случае |
|||||
|
двумерного массива |
это |
вектор-строка, |
содержащая |
||
|
максимальные элементы каждого столбца. Для комплексных |
|||||
|
элементов определение максимума происходит |
по условию |
||||
|
max(abs(x)). Если массив содержит хотя бы один элемент |
|||||
|
типа NaN, то результатом операции тоже будет NaN |
|||||
min(x) |
Аналогична предыдущей функции, но вместо |
|||||
|
максимального возвращает минимальный элемент массива |
|||||
median(x) |
Определение срединного значения (медианы) элементов |
|||||
|
массива. |
|
|
|
|
|
mean(x) |
Определение |
среднего |
арифметического значения |
|||
|
элементов массива. Для двумерного массива mean(mean(x)) |
|||||
|
есть математическое ожидание элементов массива |
|
||||
std(x) |
Определение |
|
стандартных |
отклонений |
элементов |
|
|
массива |
|
|
|
|
|
cov(x) |
Определение |
ковариационной матрицы |
элементов |
|||
|
массива (т.е. определение дисперсии элементов массива) |
|||||
corrcoef(x) |
Определение |
коэффициентов |
корреляции |
элементов |
||
|
массива |
|
|
|
|
|
diff(x,n) |
Вычисление конечных разностей порядка n для |
|||||
|
элементов массива. В случае двумерного массива берутся |
|||||
|
разности столбцов |
|
|
|
|
|
spline(x,y,x1) |
Интерполяция функции одной переменной кубическим |
|||||
|
сплайном. x1 новый вектор аргументов функции |
|
||||
Пример использования функции spline:
x = [ 0 1 2 3 4 5 6 7 8 9 10 ]; % задан вектор аргумента функции % задаем вектор значений функции
y = [ 0 0.1 0.22 0.35 0.58 0.76 0.95 1.24 1.01 0.87 0.98 ];
%определяем новый вектор функции, с меньшим значением шага x1 = 0 : 0.05 : 10;
%вычисляем вектор значения функции по новым точкам
[ y1] = spline(x, y, x1);
1.9.ГРАФИЧЕСКИЕ СРЕДСТВА СИСТЕМЫ MATLAB
1.9.1.Графики двумерных функций
plot |
Построение графиков отрезками прямых |
|
|
Функции одной переменной y(x) находят широкое применение в практике математических и других расчетов, а также в технике компьютерного математического моделирования. Для отображения таких функций используются графики в Декартовой системе координат. При этом строятся две оси – горизонтальная X и вертикальная Y – и задаются координаты x и y, определяющие узловые точки y(x). Эти точки соединяются друг с другом отрезками прямых линий. Поскольку MATLAB представляет собой матричную систему, совокупность точек y(x) задается векторами X и Y одинакового размера.
Синтаксис: plot(x,y) plot(y) plot(x,y,‘s‘)
plot(x1,y1,‘s1‘,x2,y2,‘s2‘,…)
plot(x,y)
строит график функции y(x). Если X или Y матрица, то строятся графики по данным в матрице.
plot(y)
строит график функции y(i), при этом значения берутся из вектора Y, а i представляет собой индекс соответствующего элемента. Если Y содержит комплексные элементы, то выполняется команда plot(real(Y), imag(Y)). Во всех других случаях мнимая часть игнорируется.
plot(x,y,‘s‘)
строит график функции y(x) но с заданием типа линии графика в виде строковой константы, которая может принимать следующие значения:
|
Цвет линии |
|
Тип точки |
|
Тип линии |
|
|
|
|
|
|
y |
желтый |
. |
точка |
- |
сплошная |
m |
фиолетовый |
o |
окружность |
: |
двойной пунктир |
c |
голубой |
x |
крест |
-. |
штрих-пунктир |
r |
красный |
+ |
плюс |
-- |
штриховая |
g |
зеленый |
* |
звездочка |
|
|
b |
синий |
s |
квадрат |
|
|
w |
белый |
d |
ромб |
|
|
k |
черный |
v |
треугольник (вниз) |
|
|
|
|
^ |
треугольник (вверх) |
|
|
|
|
p |
пятиугольник |
|
|
|
|
h |
шестиугольник |
|
|
Таким образом, с помощью константы s, можно изменять цвет линии, представлять узловые точки различными знаками, менять тип линии графика.
Функция plot(x1,y1,‘s1‘,x2,y2,‘s2‘,…) строит на одном графике ряд линий, представленных данными вида (x,y,‘s‘).
При отсутствии указания на цвет линий и точек он выбирается автоматически одним из шести табличных цветов (исключая белый). Если линий больше шести, то выбор цветов повторяется. Для монохромных систем линии выделяются стилем.
Пример:
»%Графики трех функций со спецификацией линий каждого графика
»x = - 2*pi : 0.1*pi : 2*pi ;
»y1 = sin(x);
»y2 = sin(x).^2;
»y3 = sin(x).^3;
»plot(x,y1,‘-m‘,x,y2,‘+r‘,x,y3,‘- -ok‘)
1 |
|
|
|
|
|
|
|
|
0.8 |
|
|
|
|
|
|
|
|
0.6 |
|
|
|
|
|
|
|
|
0.4 |
|
|
|
|
|
|
|
|
0.2 |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
-0.2 |
|
|
|
|
|
|
|
|
-0.4 |
|
|
|
|
|
|
|
|
-0.6 |
|
|
|
|
|
|
|
|
-0.8 |
|
|
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
|
|
-8 |
-6 |
-4 |
-2 |
0 |
2 |
4 |
6 |
8 |
|
|
|
|
Рис. 1.2 |
|
|
|
|
loglog |
|
|
Графики в логарифмическом масштабе |
|||||
Для построения графиков функций со значениями x и y, изменяющимися в широких пределах, нередко используются логарифмические масштабы.
Для этого применяется команда loglog(…), синтаксис которой аналогичен рассмотренному для команды plot.
Пример:
»% График экспоненциальной функции в логарифмическом масштабе
»x=logspace(-1,3);
»loglog(x,exp(x)./x,'k');
»grid on
10300 |
|
|
|
|
10250 |
|
|
|
|
10200 |
|
|
|
|
10150 |
|
|
|
|
10100 |
|
|
|
|
1050 |
|
|
|
|
100 |
|
|
|
|
10-1 |
100 |
101 |
102 |
103 |
Рис. 1.3 |
|
|
|
|
semilogx, |
Графики функций в полулогарифмическом |
semilogy |
масштабе |
|
|
В некоторых случаях предпочтителен полулогарифмический масштаб графиков, когда по одной оси задается логарифмический масштаб, а по другой – линейный.
semilogx(…) – строит график функции в логарифмическом масштабе (основание 10) по оси X и линейным по оси Y.
semilogy(…) – строит график функции в логарифмическом масштабе по оси Y и линейным по оси X.
|
Синтаксис команды аналогичен синтаксису команды plot. |
hist |
Построение графика в виде гистограммы |
Классическая гистограмма характеризует число попаданий значений элементов вектора Y в М интервалов с представлением этих чисел в виде столбиковой диаграммы. Получение данных для гистограммы выполняется функцией hist, имеющей синтаксис:
N = hist(Y) – возвращает вектор числа попаданий для 10 интервалов. Если Y – матрица, то выдаются данные по числу попаданий в ее столбцы;
N = hist(Y,M) – возвращает число попаданий для элементов вектора Y с центральными отчетами, заданными элементами вектора X;
[N,X] = hist(…) – возвращает числа попаданий в интервалы и данные о центрах интервалов;
|
hist(…) – с синтаксисом аналогичным приведенному выше, строит |
|||||||||||
график гистограммы. |
|
|
|
|
|
|
|
|
||||
|
Пример: |
|
|
|
|
|
|
|
|
|
|
|
|
Построим гистограмму для 1000 случайных чисел и выведем вектор с |
|||||||||||
данными и числах их попаданий в интервалы, заданные вектором X. |
||||||||||||
» % Построение гистограммы для 1000 случайных чисел |
||||||||||||
» x=-3:0.2:3; |
|
|
|
|
|
|
|
|
|
|
||
» y=randn(1000,1); |
|
|
|
|
|
|
|
|
|
|||
» hist(y,x); |
|
|
|
|
|
|
|
|
|
|
|
|
» h=hist(y,x) |
|
|
|
|
|
|
|
|
|
|
||
h = |
|
|
|
|
|
|
|
|
|
|
|
|
Columns 1 through 12 |
|
|
|
|
|
|
|
|
||||
0 |
0 |
3 |
7 |
8 |
9 |
11 |
23 |
33 |
43 |
57 |
55 |
|
Columns 13 through 24 |
|
|
|
|
|
|
|
|
||||
70 |
62 |
83 |
87 |
93 |
68 |
70 |
65 |
41 |
35 |
27 |
21 |
|
Columns 25 through 31 |
|
|
|
|
|
|
|
|
||||
12 |
5 |
6 |
3 |
2 |
1 |
0 |
|
|
|
|
|
|
|
100 |
|
|
|
|
|
|
|
|
|
|
|
|
90 |
|
|
|
|
|
|
|
|
|
|
|
|
80 |
|
|
|
|
|
|
|
|
|
|
|
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
50 |
|
|
|
|
|
|
|
|
|
|
|
|
40 |
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
|
|
|
|
|
|
|
|
|
|
|
20 |
|
|
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
-4 |
-3 |
|
-2 |
|
-1 |
0 |
|
1 |
2 |
3 |
4 |
Рис. 1.4 |
|
|
|
|
|
|
|
|
|
|
|
|
stairs |
|
|
|
|
Построение лестничного графика функции |
|||||||
|
Лестничные графики представляют собой ступеньки, с огибающей, |
|||||||||||
представленной функцией y(x). Такие графики используются, например, для |
||||||||||||
отображения процессов квантования функции y(x), представленной рядом |
||||||||||||
своих отсчетов. При этом в промежутках между отсчетами значения функции |
||||||||||||
считаются постоянными и равными величине последнего отсчета. |
||||||||||||
Синтаксис функции:
stairs(Y) – строит лестничный график по данным вектора Y;