Материал: Matlab. Практический подход. Самоучитель

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Самоучитель Matlab

Рис. 2.4. Графическое окно с разделом настройки вида кривой на графике

Рис. 2.5. Результат внесения изменений относительно вида координатных осей и самого графика функции

46

Глава 2. Графика в Matlab

мер и цветовые параметры задаются с помощью раскрывающихся списков группы Marker.

Враскрывающихся редактируемых полях X Data Source и Y Data Source можно изменить ссылки на данные, на основе которых строится график.

Вэтих полях указываются имена переменных рабочего пространства, содержащих числовые данные для отображения на графике: в поле X Data Source указывается вектор значений узловых точек аргумента функции (в данном случае это переменная x), а в поле Y Data Source указывается вектор значений в узловых точках отображаемой на графике функции. Некоторые из выполняемых настроек вступают в силу сразу, а некоторые – после нажатия кнопки Refresh Data. На рис. 2.5 показано графическое окно с графиком функции Бесселя после ряда выполненных настроек.

Вчастности, выбран режим заливки области между графиком функции и горизонтальной координатной осью, изменен цвет закраски (красный), тип линии установлен штрихованный. Важно также понимать, что одни и те же настройки выполнять разными способами. Например, открыть окно настройки координатных осей можно, выделив координатную рамку и выбрав команду (установив флажок опции) Property Editor в меню View. То же можно делать, выделив кривую на графике. Полезным в этом случае может оказаться и контекстное меню, открывающееся при щелчке правой кнопкой мыши.

Отображение нескольких кривых на одном графике

Да, как эксперимент это интересно. Но какое практическое применение?

К/ф "Приключения Шерлока Холмса и доктора Ватсона. Знакомство"

По умолчанию при вызове функции plot() (с разными аргументами) каждый раз создается новый график, причем создается в исходном графическом окне. Нередко нужно, чтобы несколько графиков отображались одновременно. В этом случае, если графики строятся с помощью функции plot(), между вызовами соответствующих команд необходимо выполнить команду hold on. В результате создаваемое после этого графическое изображение будет пересылаться в уже существующее графическое окно без удаления существующего графика, что позволяет добиться желаемого эффекта: на одном графике отображается сразу несколько кривых. Пример создания в одном графическом окне двух кривых для разных функциональных зависимостей приведен на рис. 2.6.

47

Самоучитель Matlab

Рис. 2.6. Две кривые на одном графике

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

>>x1=-4*pi:0.01:4*pi;

>>y1=5*sin(x1)./x1;

>>t=0:0.01:2*pi;

>>x2=4*cos(t);

>>y2=3*sin(t);

>>plot(x1,y1)

>>hold on

>>plot(x2,y2)

В данном случае строятся графики для функций y(x) = 5 sin(x) x и функции, заданной в параметрическом виде x(t) = 4 cos(t) и y(t) = 3 sin(t) при значениях параметра 0 ≤ t ≤ 2π - это эллипс.

На заметку

В последнем несложно убедиться, если заметить, что для любого значения

 

2

 

2

 

 

x

 

 

y

 

 

0 ≤ t ≤ 2π имеет место соотношение

 

 

+

 

 

= 1. Это уравнение эллипса.

 

 

 

 

 

4

 

3

 

 

Кривая для первой функции строится на основе векторов x1 и y1, а кривая для второй функции – на основе векторов x2 и y2.

48

Глава 2. Графика в Matlab

Вектор x1 создается командой x1=-4*pi:0.01:4*pi. Значениями элементов вектора являются узловые точки на интервале от −4π до 4π с шагом 0.01. Значения функции y(x) = 5 sin(x) x в этих точках записываются элементами вектора y1. Вектор определяется командой y1=5*sin(x1)./ x1. Обращаем внимание на использование оператора ./ для выполнения поэлементного деления одного массива на другой. Так, результатом выражения 5*sin(x1) является массив (вектор) того же размера, что и x1. Элементы массива рассчитываются умножением на 5 синуса от соответствующего элемента массива x1. Чтобы на основе вычисленного таким образом массива получить значения функции y(x) = 5 sin(x) x в узловых точках, необходимо еще выполнить деление на соответствующие элементы массива x1. Для такой операции используется оператор поэлементного деления

./ - элементы массива слева от оператора делятся на соответствующие им элементы массива справа от оператора.

Несколько по-иному формируются векторы x2 и y2, на основании которых строится вторая кривая. Сначала командой t=0:0.01:2*pi создается вектор t с узловыми значениями параметра, посредством которого в параметрическом виде задана кривая. Это вектор со значениями от 0 до 2π и с шагом дискретности 0.01. Далее на основании значений вектора t создаются векторы x2 и y2. В первом случае использована команда x2=4*cos(t), во втором – команда y2=3*sin(t).

После выполнения команды plot(x1,y1) создается графическое окно с графиком для первой функции. Затем выполняется команда hold on, после чего с помощью команды plot(x2,y2) в созданное ранее графическое окно добавляется график для второй функции. Еще раз обращаем внимание читателя, что если команду hold on не выполнить, второй график отобразится в исходном окне с удалением уже существующего графика. Для того чтобы выйти из режима "удержания" графиков (то есть выйти из режима добавления нового графика к уже существующему), необходимо выполнить инструкцию hold off. После этого каждый новый график будет замещать уже существующий.

На заметку

Что касается самого графика на рис. 2.6, то несложно заметить, что эллипс вытянут не так, как должно было бы быть. Причина в том, что по координатным осям масштаб разный, поэтому картинка деформирована. Обычно это проблем не вызывает. Но бывают случаи, когда важно, чтобы масштаб по каждой из осей был одинаковым – например, если отображается окружность. Полезной в таких случаях будет инструкция axis equal, которую необходимо ввести в рабочем окне и выполнить. Более подробно команды настройки внешнего вида графиков обсуждаются в следующем разделе.

49

Самоучитель Matlab

Формат, используемый по умолчанию при создании графиков, далеко не самый оптимальный. Например, обе кривые по умолчанию отображаются линией одного и того же типа и одного цвета. Тот же график, но с несколько измененными настройками, показан на рис. 2.7.

Рис. 2.7. Графическое окно с двумя кривыми после внесения изменений в настройки отображения графики

Рис. 2.8. Для выполнения настроек свойств кривой используются команды контекстного меню

В частности, добавлены линии координатной сетки, увеличена толщина линий для отображения кривых, а также для второй кривой изменен цвет

50

Источник: https://studfile.net/preview/16433384/