Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






subplot(m,n,p).

Здесь m – количество областей по вертикали на которое разбивается графическое окно, n – количество областей по горизонтали на которые разбивается графическое окно, p – номер области, которая в данный момент является активной.

Например, построим графики 6-и функций: y=sin(x), z=cos(x), w=exp(sin(x)), g=exp(cos(x)), f=cos(sin(x)), u=sin(cos(x)) на отрезке [-10; 10] с шагом 0.01.

Для решения задачи воспользуемся командой subplot. Нам необходимо построить 6 графиков в одном графическом окне. Поэтому разобьем графическое окно на 6 областей: три по вертикали и три по горизонтали.

 

 

На следующем рисунке приведены построенные программой графики

 

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

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

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

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

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

keyi=valuei – последовательность значений свойств графика, определяющие его внешний вид.

Не все параметры функции являются обязательными. В простейшем случае к ней можно обратиться кратко, как и к функции plot. Например, построим график функции y=cos(x) на отрезке [-2π; 2π ].

 

Если необходимо построит несколько графиков на одном чертеже, то последовательность команд будет примерно следующая:

 

 

Обратите внимание? массив абсцисс при построении нескольких графиков должен быть вектором-столбцом, для чего используется операция транспонирования “’”.

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

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

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

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

s1, s2, …, sn - строка, состоящая из трех символов, которые определяют соответственно

цвет линии, тип маркера и тип линии графика (см. таблицы 1-3), в строке могут использоваться один, два или три символа одновременно в любой желаемой комбинации.

Символ Описание
y желтый
m розовый
c голубой
r красный
g зеленый
b синий
w белый
k черный

 

Таблица 1. Символы, определяющие цвет линии графика

 

Таблица 2. Символы, определяющие тип маркера

 

Символ Описание
. точка
о кружок
x крестик
+ знак “плюс”
* звездочка
s квадрат
d ромб
v треугольник вершиной вниз
^ треугольник вершиной вверх
> треугольник вершиной влево
< треугольник вершиной вправо
p пятиконечная звезда

 

Таблица 3. Символы, определяющие тип линии графика

 

Символ Описание
- сплошная (по умолчанию)
: штрих, чередующийся с двумя точками
-. штрих, чередующийся с одной точкой
-- штриховая

 

Например, если необходимо построить график функции y(x) штриховой линией красного цвета с маркерами “.”, то команду plot записывают следующим образом:

plot(x, y, ’r.--’)

То есть символы, отвечающие за внешний вид графика, указывают в кавычках.

Также в Scilab встроены специальные инструкции, отвечающие за внешний вид графика, которые перечислены ниже:

  • xgrid(color) – наложение на график сетки, где color определяет id цвета линии сетки. Если оставить скобки пустыми, по умолчанию будет прорисована сетка черного цвета;
  • xtitle(title, xstr, ystr) – отображение заголовка графика и названия осей координат. title – название графика, xstr – подпись оси Х, ystr – подпись оси Y. Все три параметра указываются в кавычках;
  • legend(leg1, leg2, …, legn, pos, boxed) – наложение “легенды” на график при построении графиков нескольких функций в одних координатных осях. leg1 – имя первого графика, leg2 – имя второго графика, legn – имя n графика. Данные параметры указываются в одинарных кавычках. pos – месторасположение легенды: 1 – в верхнем правом углу, 2 – в верхнем левом углу, 3 – в нижнем левом углу, 4 – в нижнем правом углу, 5 – определяется пользователем после изображения графика. boxed – логическая переменная, которая определяет, прорисовывать (значение по умолчанию - %t) или нет (значение %f) рамку вокруг легенды.

Для примера построим графики 2-x функций y=sin(x) и f=cos(x) в одних координатных осях. Первый график изобразим сплошной линией красного цвета с маркерами типа “звездочка”. Второй график изобразим штриховой линией синего цвета с маркерами типа “квадрат”. На график наложим сетку зеленого цвета. Подпишем оси, введем заголовок графика и наложим “легенду” в левом нижнем углу. “Легенду” поместим в рамку. Ниже приведена последовательность команд в Scilab для решения данной задачи.

 

 

Построенный график выглядит следующим образом:

 

Функция plot2d также имеет обширные возможности для форматирования графиков. Напомним, что полная форма обращения к функции имеет вид:

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

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

  • style – определяет массив числовых значений цветов графика. Количество элементов массива совпадает с количеством изображаемых графиков. Можно воспользоваться функцией color, которая по названию цвета или коду rgb цвета формирует нужный id (код) цвета;
  • rect – это вектор [xmin, ymin, xmax, ymax], определяющий размер окна вокруг графика. Здесь xmin, ymin – положение верхней левой вершины, xmax – ширина окна, ymax – высота окна;
  • axesflag – определяет наличие рамки вокруг графика. Необходимо выделить следующие базисные значения параметра: 0 – нет рамки, 1 – изображение рамки, ось y слева (по умолчанию), 3- изображение рамки, ось y справа, 5- изображение осей, проходящих через точку (0, 0);
  • nax – определяет число основных и промежуточных делений координатных осей. Если параметр axesflag=1 (по умолчанию), это массив из четырех значений: [nx, Nx, ny, Ny]. Здесь Nx, Ny – число основных делений с подписями под осью Х(Y), nx, ny – число промежуточных делений;
  • leg – строка, определяющая “легенды” для каждого графика: “ leg1@leg2@...@legn”, где leg1 – “ легенда” первого графика и т.д.

Для примера построим опять 2 графика функций: sin(x) и cos(x). Первый график изобразим линией красного цвета, второй- синего цвета. Верхнюю левую границу окна графика поместим в точку с координатами [-8; -2], ширину окна выберем равной 8, высоту – 2. Нанесем на график оси координат, проходящие через точку [0; 0] / По оси Х нанесем 9 основных делений, по оси Y – 6 и 4 и 3 дополнительных деления соответственно. Также изобразим на графике “легенду”.

 

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

plot2d(x, y, d)

где d – отрицательное число, определяющее тип маркера (табл. 4).

 

Таблица 4. Числа, определяющие тип маркера.

Число Описание
-0 точка
-1 плюс
-2 крестик
-3 плюс, вписанный в окружность
-4 закрашенный ромб
-5 незакрашенный ромб
-6 треугольник вершиной вверх
-7 треугольник вершиной вниз
-8 плюс, вписанный в ромб
-9 кружок
-10 звездочка
-11 квадрат
-12 треугольник вершиной вправо
-13 треугольник вершиной влево
-14 пятиконечная звезда

 

В Scilab внешний вид графика можно менять, используя возможности графического окна, в котором он отображается. Переход к режиму форматирования осуществляется командой Правка – > Свойства графического окна…. Со всеми возможностями форматирования можно познакомиться в документации к пакету Scilab.

 

Вопросы к допуску

1. Для чего предназначена функция plot, и как ее использовать?

2. Пусть y массив ординат некоторого графика. Каков результат действия функции plot(y)?

3. Как быстро построить несколько графиков функций в одних координатных осях с помощью команды plot?

4. Каково действие команды mtlb_hold(‘on’)?

5. Опишите свойства всех параметров функции plotframe. Для чего предназначена данная функция?

6. Как можно построить несколько графиков функций в одном графическом окне, но в разных координатных осях?

7. Опишите все параметры, от которых зависит функция plot2d.

8. Как, используя функцию plot2d построить несколько графиков функций в одних координатных осях?

9. Как с помощью функции plot построить график функции в виде штриховой линии желтого цвета с маркерами типа “кружок”?

10. Как нанести сетку при построении графика функции с помощью команды plot?

11. Каково действие команды xtitle?

12. Как расположить “легенду” при построении графиков нескольких функций в левом верхнем углу?

13. Опишите возможности для форматирования графиков функций с помощью команды plot2d?

 

Задания к работе.

 

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

а) sin(cos(x)), cos2(x), cos(x)+sin(x); на отрезке [-π; π ] с шагом 0.01

б) cos(sin(x)), sin2(x), cos(x)-sin(x); на отрезке [0; π ] с шагом 0.001

в) exp(sin(x)), sin3(x), cos(2x)+2sin(x); на отрезке [-2 π; 0] с шагом 0.02

г) exp(cos(x)), sin3(x)-cox2(x), cos(x)+cos(2x); на отрезке [-π /2; π /2] с шагом 0.001

д) sin(x/2), sin(x)cos(x), sin(x)-sin(3x); на отрезке [-2 π; 2 π ] с шагом 0.1

е) cos(2x), 1/2cos(x+2), sin(x2-2x-1); на отрезке [-3 π /2; π /2] с шагом 0.04

ё) cos1/2(2x), sin(x/2)cos(x/3), 1/2sin(x)-2cos(2x) на отрезке [0; 3 π /2] с шагом; 0.25

ж) sin1/2(x), sin(x/3)cos(x/2), sin(x)+sin(2x)+sin(3x); на отрезке [ - π; π ] с шагом 0.2

з) sin(3x), cos1/3(x), cos(x)+cos(2x)+cos(3x); на отрезке [0; π ] с шагом 0.01

и) cos(3x), sin(x)sin2(2x), sin(3x)+cos(2x); на отрезке [-2 π; 0] с шагом 0.002

й) sin(cos(x/2)), 2cos2(x/2), cos(2x)-2sin(x); на отрезке [-π /2; π /2] с шагом0.005

к) cos(sin(x/2)), 3sin1/3(x/3), sin(x)-cos(x)+sin(2x)-cos(2x); на отрезке [-2 π; 2π ] с шагом 0.02

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

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

а) ;

б) ;

в) ;

г) ;

д) ;

е)

Отрезок построения графика и шаг выберите самостоятельно с таким расчетом, чтобы построенный график охватывал все особенности функции.

 

  1. Постройте график параметрически заданной функции: ; на отрезке [-2π; 2π ] с шагом 0.005.
  2. Задана табличная функция:
x -2 -1 -0.2   0.1 0.9 1.1   2.5   5.6 5.9     8.6   9.9    
y 3.4 2.9 2.2 1.6 1.1   1.4 2.6 3.6                   6.7

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

<== предыдущая лекция | следующая лекция ==>
Практическое задание 1 | Вставка объекта, созданного в редакторе Paint.
Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.017 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал