36858

Построение двумерных графиков

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

Информатика, кибернетика и программирование

plotxy[xcpycpcption] x массив абсцисс; y массив ординат; xcp ycp cptionподписи осей X Y и графика соответственно. Затем воспользуемся функцией plotxy для построения кривой и выведем с ее же помощью подписи координатных осей X Y а также имя графика plot function y=sincosx Листинг 4. Построение графика функции y = sincosx с помощью функции plot x=2pi:0.

Русский

2013-09-23

396 KB

3 чел.

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

Построение двумерных графиков

Функция plot.

plot(x,y,[xcap,ycap,caption])

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

y - массив ординат;

xcap, ycap, caption-подписи осей X, Y и графика соответственно.

Пусть x изменяется на интервале [−2π; 2π] с шагом 0,1.

Сформируем массив X.

Вычисляя значение функции y = sin(cos(x)) для каждого значения массива X, создадим массив Y.

Затем воспользуемся функцией plot(x,y) для построения кривой и выведем с ее же помощью подписи координатных осей ’X’, ’Y’, а также имя графика

’plot function y=sin(cos(x))’

Листинг 4.1. Построение графика функции y = sin(cos(x)) с помощью функции plot

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

y=sin(cos(x));

plot(y);

В простейшем случае обращение к функции имеет вид plot(y), в качестве массива х выступает массив номеров точек массива y.

Листинг 4.2. Построение графика функции вида y = f(i), где j - номер точки в массиве y

y=[1 2 3 -2 4 5 -1 6 9 11 0 -2 5];

plot(y);

Такой синтаксис функции plot позволяет строить графики нескольких функций.

Допустим, что x принадлежит интервалу [−2π; 2π] и изменяется с шагом 0,1.

Создадим массив X. Поскольку x является аргументом для всех четырех функций, его в обращении к функции plot можно не указывать.

Также необязательно формировать для каждой функции свой массив значений. Достаточно указать в квадратных скобках через точку с запятой их математические выражения, и эти массивы автоматически будут созданы как промежуточный этап построения кривых функций.

Листинг 4.3. Построение графиков нескольких функций в одних координатных осях с помощью команды plot.

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

plot([sin(cos(x));cos(sin(x));exp(sin(x));exp(cos(x))]);

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

При простейшем обращении к функции plot(x,y) создается окно с именем Scilab Graphic (0), в котором будет построен график функции y(x) на заданном интервале.

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

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

plot(x1,y1,x2,y2,...xn,yn)

где x1, y1 - массивы абсцисс и ординат первого графика;

x2, y2 - массивы абсцисс и ординат второго графика;

...

xn, yn - массивы абсцисс и ординат n-ого графика.

Определим интервал изменения x [-6,28;6,28], шаг-0,02. Теперь сформируем массивы значений функций Y , Z, V .

Для построения заданных кривых в одних координатных осях необходимо в качестве аргументов функции plot попарно, через запятую, указать имя массива первого аргумента и имя массива первой функции, имя массива второго аргумента и имя массива второй функции и т. д. Обращение к функции plot будет иметь вид plot(x,y,x,z,x,v).

Листинг 4.4. Построение графиков нескольких функций в одних координатных осях с помощью команды plot

x=-6.28:0.02:6.28;y=sin(x/2);

z=cos(x);v=exp(cos(x));

plot(x,y,x,z,x,v);

Построить несколько графиков в одном окне можно и с помощью короткой записи функции plot(x,y), но перед обращением к функциям plot(x2,y2), plot(x3,y3), ..., plot(xn,yn) вызвать команду mtlb_hold(’on’), она заблокирует режим создания нового окна.

 

Как и в предыдущей задаче, прежде всего, определяем интервал и шаг изменения x [-6,28;6,28], 0,02 и формируем массивы значений функций Y , Z, V .

Однако применять будем краткую форму обращения к функции plot - plot(x,y), которая поочередно создаст первый, второй и третий график.

Для того, чтобы каждый раз при выполнении функции plot не создавалось новое графическое окно, перед ней будем выполнять команду mtlb_hold(’on’).

Листинг 4.5. Построение графиков нескольких функций в одних координатных осях с помощью команды mtlb_hold(’on’)

x=-6.28:0.02:6.28;

y=sin(x/2); z=cos(x); v=exp(cos(x));

plot(x,y);

mtlb_hold(’ on’);

plot(x,z);

mtlb_hold(’ on’);

mtlb_hold(’ on’);

plot(x,v);

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

Для формирования области в графическом окне служит команда plotframe:

plotframe(rect, tics [,grid, title, x-leg, y-leg, x, y, w, h])

где

rect - вектор [xmin, ymin, xmax, ymax], который определяет границы изменения x и y-координат области;

tics - вектор [nx, mx, ny, my], который определяет количество линий сетки по оси X (mx) и Y (my), величины nx и ny должны определять число подинтервалов по осям X и Y ;

grid - логическая переменная, которая определяет наличие (%t) либо отсутствие координатной сетки (%f). Этот параметр следует указывать для обеих осей, например, [%t,%t];

bound - логическая переменная, которая при значении true позволяет игнорировать параметры tics(2) и tics(4).

title - заголовок, который будет выводится над графической областью;

x-leg, y-leg - подписи осей графика X и Y ;

x, y - координаты верхнего левого угла области в графическом окне, w-ширина, h-высота окна.

Значения x, y, w, h измеряются в относительных единицах и лежат в диапазоне [0, 1].

После определения области в нее можно вывести график функции с помощью команды plot.

Допустим, что x изменяется на интервале [−10 : 10] с шагом 0,01. Сформруем массивы значений функций Y , Z, U, V .

Используя параметр rect как самостоятельную команду, задаем шаблон размера координатных осей каждой области построения кривой. Теперь ось X будет ограничена минимальным и максимальным значением x (зависит от конкретной функции), а ось Y для всех областей ограничивается значениями y -1 и 1.

Командой tics указываем, что на всех выводимых графиках, во всех областях на оси абсцисс, должно быть 11 основных и по 2 промежуточных деления, на оси ординат - 5 основных и по 10 промежуточных делений.

Для создания областей внутри графического окна используем функцию plotframe со всеми параметрами: прорисовыванием сетки комбинацией значений (%t) и (%f), выводом подписи графика и координатных осей, а также разметкой каждой из областей - массив, в котором первые два числа – координаты верхнего левого угла, а последние два - ширина и высота области.

Для формирования нового графика после каждого вызова функции plotframe выполняем функцию plot(x,y).

Листинг 4.6. Построение графиков нескольких функций в одном графическом окне, но каждого в своих координатных осях с помощью команды plotframe

x=[-10:0.01:10];

y=sin(2*x); z=cos(3*x); u=cos(sin(2*x)); v=sin(cos(3*x));

rect=[min(x),-1,max(x),1];

tics=[2,11,10,5];

plotframe(rect,tics,[%t,%t],["Function y=sin(2x)",..."X","Y"], [0,0,0.5,0.5]);

plot(x,y);

plotframe(rect,tics,[%f,%f],["Function y=cos(3x)",..."X","Y"], [0.5,0,0.5,0.5]);

plot(x,z);

plotframe(rect,tics,[%f,%f],["Function y=cos(sin(2x))",...X","Y"], [0,0.5,0.5,0.5]);

plot(x,u);

plotframe(rect,tics,[%t,%t],["Function y=sin(cos(3x))",..."X","Y"], [0.5,0.5,0.5,0.5]);

plot(x,v);

Еще одним способом изображения нескольких графиков в одном окне является использование функции subplot. Она также разделяет графическое окно на несколько отдельных областей.

Обращение к ней имеет вид:

subplot(m,n,p) или subplot(mnp)

Выполнение функции приводит к тому, что графическое окно разбивается на m окон по вертикали и n окон по горизонтали, текущим окном становится окно с номером p.

Пусть x изменяется на интервале [−10 : 10] с шагом 0,01. Сформируем массивы значений функций Y , Z, U, V , W, R.

C помощью функции subplot разбиваем графическое окно на заданное количество областей. Определимся, что в каждом столбце по вертикали должно быть 3, а по горизонтали 2 области для вывода графиков.

Третье число в записи функции subplot указывает, в которую из областей (счет ведется по порядку_слева направо и сверху вниз) выводится график, формируемый функцией plot(x,y).

Листинг 4.7. Построение графиков нескольких функций в одном графическом окне, но каждого в своих координатных осях с помощью команды subplot

x=[-10:0.01:10];

y=sin(x); z=cos(x);

u=cos(sin(x)); v=sin(cos(x));

w=exp(sin(x)); r=exp(cos(x));

subplot(3,2,1);

plot(x,y);

subplot(3,2,2);

plot(x,z);

subplot(3,2,3);

plot(x,u);

subplot(3,2,4);

plot(x,v);

subplot(3,2,5);

plot(x,w);

subplot(3,2,6);

plot(x,r);


 

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

6304. Обучение аудированию 116.07 KB
  Обучение аудированию Аудирование-это вид устной рецептивной речевой деятельности,представляет собой восприятие на слух устной речи и её понимание. Термины аудирование, аудировать (от лат.аudire) введены в методику в 1950...
6305. Аппаратное обеспечение персонального компьютера 272 KB
  Аппаратное обеспечение персонального компьютера. План. Развитие вычислительной техники. Принцип работы компьютера. Состав персонального компьютера. Назначение основных узлов. Развитие вычислительной техники. Цифровая вычислительная...
6306. Внешние силы. Деформация и перемещения. Определение внутренних усилий 182.28 KB
  Внешние силы.Деформация и перемещения.Определение внутренних усилий Внешние силы (нагрузки) Нагрузки,действующие на сооружения и их элементы,представляют собой силы или пары сил (моменты),которые могут рассматрив...
6307. Генетика и эволюция. Закономерности наследственности и изменчивости живых организмов 90 KB
  Генетика и эволюция Генетика - наука, изучающая закономерности наследственности и изменчивости живых организмов. Наследственность - это свойство всех живых организмов передавать свои признаки и свойства из поколения в поколение. Изме...
6308. Государство Древней Индии. Судебная система в Индии 51 KB
  Государство Древней Индии образовалось в устьях рек Инде, пять притоков которого образуют Пенджаб (Пятиречье) и Ганге, где были наиболее благоприятные условия для занятия скотоводством и земледелием. Очень рано в этих районах вследствие недостатка в...
6309. Механизм административно-правового регулирования 164 KB
  Механизм административно-правового регулирования. Понятие, сущность, структура механизма административно-правового регулирования Механизм административно-правового регулирования (МАПР) - упорядоченная по стадиям регулирования совокупность админис...
6310. Предмет и метод статистики 510.5 KB
  МОДУЛЬ № 1 Предмет и метод статистики Статистика – отрасль общественных наук, которая изучает количественную сторону качественно определенных массовых социально–экономических явлений и процессов, их структуру и распределение, размещение в ...
6311. Основные законы гидродинамики 350 KB
  Основные законы гидродинамики 1. Уравнение неразрывности Рассмотрим установившийся поток жидкости между живыми сечениями 1 и 2(рис.1). За единицу времени через живое сечение 1 втекает в рассматриваемую часть 1-2 объем жидкости Рис.1 Q1...
6312. Организационные структуры управления (ОСУ) 510.5 KB
  Организационные структуры управления (ОСУ) ОСУ - понятие, структура и элементы, принципы построения Бюрократические структуры управления Адаптивные структуры управления Под организационной структурой управления необходимо пони...