Читайте также:
|
|
1.3. Построение графиков – функция plot
В предыдущем пункте мы уже увидели преимущества матричной ориентированности MATLAB’а. В других языках для записи матричных операций требуется использовать подпрограммы. Здесь же эти операции записываются (и выполняются) очень просто – так же как они записываются для простых переменных.
Очень просто в MATLAB’е удается получить и графическое представление результатов.
Сейчас мы рассмотрим функцию plot – функцию построения двумерных графиков. В простейшем варианте эта функция использует два аргумента – два вектора с одинаковым количество элементов. В первый вектор следует занести абсциссы, а во второй – ординаты точек графика. Заданные точки соединяются ломаной линией. Пример.
>> x = [0 1 2 3 4 5];
>> y = [1 2 2.5 2.7 2.8 2.9];
>> plot(x,y)
В результате MATLAB покажет вам графическое окно (Figure - фигуру) с заказанным графиком.
Кстати, в этом примере есть еще одно небольшое новшество. Команды задания векторов x и y заканчиваются точкой с запятой (;). Точку с запятой ставьте тогда, когда вы хотите подавить эхо-печать – автоматический вывод результата в командное окно.
Однако вводить такие вектора вручную, когда вы хотите построить график с большим количеством точек, занятие не слишком веселое. В таких случаях очень полезна функция – linspace. Эта функция делит числовой отрезок на отрезки равной длины и в качестве результата возвращает вектор с координатами точек, осуществляющих это разбиение. Например,
>> x = linspace(1,2,5)
x =
1.0000 1.2500 1.5000 1.7500 2.0000
Этой командой мы попросили разбить отрезок с левой границей равной 1, и правой границей равной 2, пятью точками на равные отрезки (то есть на четыре отрезка).
Теперь давайте попробуем вычислить sin(x). С точки зрения школьной математики это абсурд. Аргументом синуса должно быть одно число, а мы пытаемся вычислить синус вектора, то есть нескольких чисел. MATLAB, однако, подобные вольности не смущают. Он просто создает новый вектор и заносит в качестве первого элемента синус x(1), в качестве второго – синус x(2) и так до конца вектора x.
>> y = sin(x)
y =
0.8415 0.9490 0.9975 0.9840 0.9093
Теперь посмотрим, как с помощью этих функций (linspace и plot) можно построить вполне приличный график, совсем не похожий на ломаную линию с последнего рисунка. Выполните следующие три команды:
>> x = linspace(0,2*pi,101);
>> y = sin(x);
>> plot(x,y)
Первая команда создает вектор x с 101 числом, которые делят отрезок на 100 равных участков. Обратите внимание, что в конце команды предусмотрительно поставлена точка с запятой. Благодаря этому отключается эхо-печать, чтобы в командное окно не выводились значения 101 элемента вектора x. Вторая строчка заносит в вектор y соответствующие значения функции sin(x).
В результате график синусоиды выглядит довольно презентабельно. Хотя на самом деле он, по-прежнему, представляет собой ломаную линию, но ее отрезки настолько коротки, что выглядят на экране гладкой кривой.
Дата добавления: 2015-08-13; просмотров: 100 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Лабораторная работа № 1. Начальные сведения о MATLAB | | | Упражнение. |