36860

Функция plot2d

Лабораторная работа

Математика и математический анализ

Функция plot2d plot2d[logflg]xy[key1=vlue1key2=vlue2. Следует отметить что вовсе не обязательно использовать полную форму записи функции plot2d со всеми ее параметрами. В простейшем случае к ней можно обратиться кратко как и к функции plot. Создавать массив Y необязательно следует лишь в качестве аргумента функции plot2d указать математическое выражение функции.

Русский

2013-09-23

690.5 KB

6 чел.

Лабораторная работа № 5а.

Функция plot2d

plot2d([logflag],x,y’,[key1=value1,key2=value2,...,keyn=valuen]

где

logflag - строка из двух символов, каждый из которых определяет тип осей (n-нормальная ось, l-логарифмическая ось), по умолчанию-«nn»;

x - массив абсцисс;

y - массив ординат или матрица, каждый столбец которых содержит массив ординат очередного графика - случае, если необходимо построить графики нескольких функций y1, y2, ..., yn, когда все они зависят от одной и той же переменной x. При этом количество элементов в массиве x и y должно быть одинаковым. Если x и y - матрицы одного размера, то каждый столбец матрицы y отображается относительно соответствующего столбца матрицы x;

keyi=valuei - последовательность значений свойств графика key1=value1, key2=value2, ..., keyn=valuen, определяющих его внешний вид. Возможные значения свойств графика будут подробно описаны ниже.

Следует отметить, что вовсе не обязательно использовать полную форму записи функции plot2d со всеми ее параметрами. В простейшем случае к ней можно обратиться кратко, как и к функции plot.

Задача 4.7.

Построить график функции y = sin(x).

Допустим, что x изменяется на интервале [−2π; 2π] с шагом 0,1. Сформируем массив X. Создавать массив Y необязательно, следует лишь в качестве аргумента функции plot2d указать математическое выражение функции.

Листинг 4.7. Пример простейшего использования функции plot2d для построения графика

x=[-2*%pi:0.1:2*%pi];

plot2d(sin(x));

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

Самостоятельно проведите построение.

Оформление графиков при помощи функции plot

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

обращения к функции plot:

plot(x1, y1, s1, x2, y2, s2, ..., xn, yn, sn)

где x1, x2, ..., xn - массивы абсцисс графиков;

y1, y2, ..., yn - массивы ординат графиков;

s1, s2, ..., sn - строка, состоящая из трех символов, которые определяют соответственно цвет линии, тип маркера и тип линии графиков, в строке могут использоваться один, два или три символа одновременно в любой желаемой комбинации.

В таблицах приведены символы цвета, типа маркера и линии графика.

 

Листинг 4.10. Изменение типа, цвета линии графика, вывод точек (маркеров) на линии графика с помощью функции plot

t=0:%pi/20:2*%pi;

plot(t,sin(t),'ro-.',t,cos(t),'cya+',t,abs(sin(t)),'--mo')

Или

axfig3 = gca();

scf(4);

plot(axfig3,[t ;t],[sin(t) ;cos(t)],'zdat',[1:2],'marker','d','markerfac','green','markeredg','yel')

Самостоятельно рассмотреть новые параметры в выше представленном листинге.

Чтобы график проще «читался», удобно выводить сетку – дополнительные оси для показателя X и показателя Y. В Scilab это можно сделать с помощью команды xgrid(color), где color определяет id цвета линии сетки. Если оставить скобки пустыми, по умолчанию будет прорисована сетка черного цвета.

Построим в одних координатных осях синусоиду с линией красного цвета и косинусоиду с линией синего цвета на заданном интервале, а затем выведем сетку.

x=-10:0.01:10;

y=sin(cos(x));

z=cos(sin(x));

plot(x,y,’r’,x,z,’b’);

xgrid();

Заголовок графика, построенного функцией plot, можно вывести командой xtitle:

xtitle(title, xstr, ystr)

где title - название графика;

xstr - название оси X;

ystr - название оси Y.

Добавим к предыдущему графику заголовок: xtitle(’Grafic y=f(x)’,’X’,’Y’);

В случаях, когда в одной координатной плоскости изображаются графики нескольких функций, как в нашем примере, возникает необходимость в легенде. Ее можно вывести с помощью команды legend:

legend(leg1, leg2, ..., legn, [pos], [boxed])

где leg1 - имя первого графика,

leg2 - имя второго графика,

legn - имя n-го графика;

pos - месторасположение легенды:

1 - в верхнем правом углу (по умолчанию),

2 - в верхнем левом углу,

3 - в нижнем левом углу,

4 - в нижнем правом углу,

5 - определяется пользователем после изображения графика;

boxed - логическая переменная, которая определяет, прорисовывать (значение по умолчанию - %t) или нет (значение %f) рамку вокруг легенды.

Листинг 4.10. Вывод легенды графика и определение ее свойств с помощью команды legend

t=linspace(0,%pi,20);

plot2d(t,[cos(t'),cos(2*t'),cos(3*t')],[-5,2 3]);  

hl=legend(['cos(t)';'cos(2*t)';'cos(3*t)']);

Построить в отдельном окне графики функций y1=ln x, y2=ex, y3=2x. Задать различные цвета и типы маркеров для графиков. Задать оси координат, легенды.

Оформление графиков при помощи функции plot2d

plot2d([logflag],x,y’,[key1=value1,key2=value2,...,keyn=valuen]

Возможны следующие значения параметра keyn=valuen:

style - определяет массив числовых значений цветов графика. Количество элементов массива совпадает с количеством изображаемых графиков.

Можно воспользоваться функцией color, которая по названию (color("имя цвета")) или коду rgb (color(r,g,b)) цвета формирует нужный id (код) цвета.

Полный перечень всех доступных при форматировании оттенков с их RGB - id можно найти в статье встроенной справочной системы Scilab «Color_list».

Однако следует учесть, что в статье перед id-цвета опущены «0». В качестве примера построим в одних координатных осях графики функций y = sin(x) и y = cos(x), для синусоиды с помощью параметра style определим имя цвета - красный («red»), а для косинусоиды - id зеленого цвета (0,176,0).

Листинг 4.14. Изменение цвета линии графика с помощью параметра style функции plot2d

x=[-2*%pi:0.1:2*%pi];

y=[sin(x);cos(x)];

plot2d(x,y’,style=[color("red"),color(0,176,0)]);

или

x=[-2*%pi:0.1:2*%pi];

y=[sin(x); cos(x)];

plot2d(x,y',style=[color("red"), color("blue")], axesflag=5, leg="sin(x)@cos(x)");

rect - значение параметра keyn=valuen функции plot2d - это вектор [xmin, ymin, xmax, ymax], определяющий размер окна вокруг графика.

Здесь xmin, ymin  - положение верхней левой вершины;

xmax - ширина окна;

ymax - высота окна.

Применим параметр rect к предыдущему примеру, установив для него следующие значения [-8,-2,8,2]. Вследствие того, что ось Y продлилась от [-1:1] до [-2:2], а ось X осталась без изменений, визуально кажется, будто график сжался по оси Y.

axesflag - значение параметра keyn=valuen функции plot2d - определяет наличие рамки вокруг графика.

Необходимо выделить следующие базисные значения этого параметра:

0 - нет рамки;

1 - изображение рамки, ось y слева (по умолчанию);

3 - изображение рамки, ось y справа;

5 - изображение осей, проходящих через точку (0,0).

Задача.

Построить графики функций y = sin(x) и y1 = cos(x), используя 4 базисные значения параметра axesflag, в одном графическом окне при помощи функции subplot.

Для того, чтобы определить число основных и промежуточных делений координатных осей, в Scilab существует параметр nax. Если параметр axesflag=1 (по умолчанию), это массив из четырех значений: [nx, Nx, ny, Ny].

Здесь Nx (Ny) - число основных делений c подписями под осью X (Y );

nx (ny) - число промежуточных делений.

Задача.

Построить графики функций y = sin(x) и y1 = cos(x). Модифицировать масштаб координатных осей графика.

Сформируем массив X, приняв, что x изменяется в диапазоне [-8:8] с шагом 0,1, затем совместно сформируем массивы значений заданных функций с помощью следующей записи: y=[sin(x); cos(x)].

С помощью функции plot2d построим кривые функций y = sin(x) и y1 =cos(x), установив значение параметра nax=[4,9,3,6]. 

Таким образом, ось X будет разбита 9 основными делениями (засечками), каждое основное - 4 промежуточными, а ось Y - соответственно 6 и 3.

Листинг. Нанесение на координатные оси графика основных и промежуточных делений с помощью параметра nax функции plot2d

x=[-8:0.1:8];

y=[sin(x); cos(x)];

plot2d(x,y’,style=[color("red"),color("blue")],axesflag=1,...nax=[4,9,3,6]);

leg - значение параметра keyn=valuen функции plot2d - строка, определяющая легенды для каждого графика:

"leg1@leg2@leg3@...@legn"

где leg1 - легенда первого графика, ..., legn - легенда n-го графика.

В качестве примера используем предыдущую задачу. Построим графики функций y = sin(x) и y1 = cos(x) с пересечением осей X и Y в точке (0,0) - значение параметра axesflag=5, выведем легенду с подписями для обеих кривых.

x=[-2*%pi:0.1:2*%pi];

y=[sin(x); cos(x)];

plot2d(x,y',style=[color("red"), color("blue")], axesflag=5,leg="sin(x)@cos(x)");

Функцию plot2d можно использовать для построения точечных графиков. В этом случае обращение к функции имеет вид plot2d(x,y,d), здесь d – отрицательное число, определяющее тип маркера.

Листинг. Точечный график синусоиды.

x=[-2*%pi:0.25:2*%pi];

y=sin(x);

plot2d(x,y,-3);

Таблица. Значения параметра d.

Задача.

Построить точечный график функции y = sin(x) с типом маркера «плюс, вписанный в ромб».

Построение графиков в виде ступенчатой линии

Для изображения графика в виде ступенчатой линии в Scilab существует функция plot2d2(x,y).

Она полностью совпадает по синтаксису с функцией plot2d. Главное отличие состоит в том, что X и Y могут быть независимыми друг от друга функциями, важно лишь, чтобы массивы X и Y были разбиты на одинаковое количество интервалов.

Задача. Имеются детальные наблюдения за ростом народонаселения на планете за период с 1947 по 2006 год, млн. чел. Построить график, отражающий динамику процесса на основании данных 1947, 1958, 1970, 1980, 1999 и 2006 годов.

Поэлементно введем массивы X и Y и воспользуемся функцией plot2d2(x,y).

x=[1947 1958 1970 1980 1999 2006];

y=[2.003 3.1 3.6 4.7 5.2 5.4];

plot2d2(x,y);

Построение графиков в полярной системе координат

Полярная система координат состоит из заданной фиксированной точки O  - полюса, концентрических окружностей с центром в полюсе и лучей, выходящих из точки O, один из которых OX - полярная ось.

Расположение любой точки M в полярных координатах можно задать положительным числом ρ = OM (полярный радиус), и числом ϕ, равным величине угла XOM (полярный угол).

В Scilab для формирования графика в полярной системе координат необходимо сформировать массивы значений полярного угла и полярного радиуса, а затем обратиться к функции polarplot:

polarplot(fi,ro,[key1=value1,key2=value2,...,keyn=valuen]),

где fi - полярный угол;

ro - полярный радиус;

keyn=valuen - последовательность значений свойств графика.

Рассмотрим пример построения полярных графиков =3cos5 ,1=3cos3.

fi=0:0.01:2*%pi;

ro=3*cos(5*fi);

ro1=3*cos(3*fi);

polarplot(fi,ro,style=color("red"));

polarplot(fi,ro1,style=color("blue"));

Задание. Построить графики функций =3cos2 ,1=2sin.

Построение графиков в параметрической форме

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

Листинг.

t=-5:0.01:5;

x=(t.^2-1)./(t.^2+1);

y=t.*(t.^2-1)./(t.^2+1);

plot(x,y);

Задание. Построить график функции полукубической параболы, заданной параметрически

x(t) = 0.5t2

y(t) = 0.3t3


 

А также другие работы, которые могут Вас заинтересовать

63250. Урок узагальнення з теми: Давній Рим у VIII—І ст. до нашої ери 23.88 KB
  Після цього уроку учні зможуть: називати час утворення Римської республіки завоювання Римом Італії виникнення Риму війн Риму з Карфагеном установлення диктатури Сулли повстання Спартака першого тріумвірату історичних осіб цієї доби основні джерела рабства...
63251. Диктатура Юлія Цезаря 25.34 KB
  Після цього уроку учні зможуть: називати час громадянської війни в Римі диктатури Гая Юлія Цезаря; показувати на карті напрями походів Гая Юлія Цезаря; застосовувати та пояснювати на прикладах поняття диктатор...
63252. Римська імперія в І—II ст. нашої ери 29.75 KB
  Ознайомитися із системою державного управління що склалася за часів правління Августа; удосконалити вміння давати характеристику історичної особистості. Очікувані Після цього уроку учні зможуть: називати час правління Октавіана Августа органи влади імперії...
63253. Римська культура 27.61 KB
  Мета: ознайомитися з основними досягненнями культури Давнього Риму, простежити звязок між грецькою та римською культурами; удосконалити навички складання плану параграфа; визначити роль римської культури в розвитку світової культури.
63254. Місто Рим і життя його мешканців 20.61 KB
  Мета: дати уявлення про життя столиці Римської імперії та побут римських громадян; знайомити школярів із визначними памятками Риму підвищити рівень загальної культури учнів.
63255. Виникнення християнства 25.65 KB
  Мета: ознайомити учнів з історією виникнення і перших етапів існування християнства; схарактеризувати діяльність перших християнських громад та їхнє становище в римській державі; зясувати причини швидкого поширення вчення Ісуса Христа.
63256. Урок узагальнення з теми «Падіння республіки та рання імперія» 22.26 KB
  Які події періоду що розглядається вам найбільше запамяталися Яка подія відбулася 15 березня 44 р. Скільки років минуло від убивства Цезаря до проголошення Октавіана принцепсом Скільки років тривало одноосібне правління Октавіана Які династії правили...