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




Иногда необходимо построить несколько графиков в одном графическом окне. Команда plot(X,Y) при вызове каждый раз создает новый график в текущем графическом окне.

В одних осях можно построить любое количество графиков. Для этого в команде plot нужно последовательно указать пары векторов и атрибуты для желаемого количества графиков.

В этом случае целесообразно идентифицировать каждый график. Это можно сделать с помощью команды legend. Она размещает на графике легенду с информацией о линиях. Аргументы команды текстовые. Их число и порядок соответствуют линиям графика. Можно использовать еще и числовой параметр, который отвечает за месторасположения легенды в графическом окне. Он может принимать значения: -1, 0, 1, 2, 3, 4. По умолчанию он равен -1 и легенда располагается в правом верхнем углу.

Построим 2 графика в одних осях: красными звездочками, соединенными линиями sin(x), а зелеными крестиками без соединительных линий - cos(x):

>> X=linspace(0,2*pi,100); %задаем вектор аргумента

>> Y=sin(x); % задаем формулу для вычисления значений функции

>> plot(X, Y,'*r-',X,cos(X),'+g') % строим график

>>legend('sin(x)','cos(x)') %легенда

Иногда бывает нужно последовательно построить несколько графиков в одних осях. Для последовательного построения графиков в одних осях надо установить режим сохранения текущего графика – hold on. Команда hold off снимает сохранение.

Графики этих же функций построим последовательно:

X=linspace(0,2*pi,100); %задаем вектор аргумента

Y=sin(X); % задаем формулу для вычисления значений функции

Z=cos(X);

plot(X, Y,'*r-') % строим график sin

hold on;

plot(X, Z,'+g') % строим график cos

legend('sin(X)','cos(X)') % легенда

Hold off

График, задаваемый значениями вектора Z, будет наложен на график, отображающий значения вектора Y.

Кривая – окружность радиуса 2*pi

Спираль

%на одном графике окружность и спираль

t=0:0.1:2*pi;

x=2*pi*cos(t);

y=2*pi*sin(t);

u=t.*cos(4*t);

v=t.*sin(4*t);

plot(x,y,'pr','MarkerSize',10)

hold on

plot(u,v,'b-','LineWidth',3)

 

Для построения графиков можно использовать также и другие функции, с которыми мы познакомимся позже.

Можно построить график с использованием функции ezplot (<символьное выражение>,[<интервал>]).

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

>> ezplot('sin(X)',[0 2*pi])

Можно также воспользоваться функцией fplot()

Функция работает либо с символьным выражением, либо с именем функции, которая записана в файле, либо с анонимной функцией, определенной в выражении f=@(x) (sin(x)); В этом случае передается указатель на функцию, которая отображена на графике.

fplot('sin(X)',[0 2*pi]) % функция задана символьным выражением

>> f=@(X) (sin(X)) % функция задана как анонимная

>> fplot(f,[0 2*pi])

ezplot тоже может работать с анонимной функцией

 

До сих пор мы строили графики в одном графическом окне. При необходимости построения каждого графика в отдельном окне, надо набрать команду: figure. Сначала открывается графическое окно с именем figure1, и оно становится текущим (то, где ведется построение). Для получения нового окна, надо снова задать эту команду, при выполнении которой открывается окно figure2, и вести построения в нем. При этом не произойдет наложение на прежнее графическое изображение, а откроется новое окно со следующим номером. Можно также воспользоваться командой figure(номер). Для очистки графического окна служит команда clf.

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: