18
Лекция 3

Программирование. Лекция 3

Embed Size (px)

Citation preview

Page 1: Программирование. Лекция 3

Лекция 3

Page 2: Программирование. Лекция 3

I. Графики

Page 3: Программирование. Лекция 3

II. Графические библиотекиГрафически библиотеки называются plots и plottoolsPlots содержит функции для работы с 2х и 3х мерными графиками и анимациейPlottools предназначена для рисования сложных графиков и фигур

Page 4: Программирование. Лекция 3

III. Общий формат функций для вывода графиковУ каждой функции существует 3 группы параметров

1. Источник данных (список точек, выражение и т.п.)

2. Переменная(ые) и диапазон вывода

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

<имя_функции>(<выражение>,<переменная=диапазон>,<управляющие параметры>);

plots[<имя_функции>](<выражение>,<переменна=диапазон>,<управляющие параметры>);

Пример:

plot(sin(2*x),x=-2*Pi..2*Pi);

Page 5: Программирование. Лекция 3

IV. Отображение нескольких графиков на одном рисункеЛюбой график можно присвоить в переменную. При этом он будет представлен не в виде рисунка, а в виде списка точек.

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

Page 6: Программирование. Лекция 3

V. Построение графиков выражений. Функция plotДля вывода 2х мерных графиков выражений с одним параметром используется функция plot

Формат:

plot(<выражение>, <переменная=диапазон>,<управляющие параметры>);

Page 7: Программирование. Лекция 3

VI. Вывод списка значений. Функция listplotВ отличие от большинства графических функций у listplot только один обязательный параметр – список значений. Формат: listplot(<список значений>,<управляющие параметры>);

Page 8: Программирование. Лекция 3

VI.1. Форматы представления списка точекТочки могут быть представлены в 2х форматах:Простой список [1,2,5,1.5,7.444,0.66] – значения по оси абсцисс (x). Значения по оси ординат(y) берутся как индекс соответствующего значения по x.Двумерный (вложенный) список [[1,0.5],[2,0.4],[2.2],[0.3]] – набор точек [x,y].

Пример генерации двумерного списка

> [seq( [i^2,sin(Pi/i)], i=1..10 )];

Page 9: Программирование. Лекция 3

VI. Вывод списка значений. Функция pointplotФункция pointplot аналогичная функции listplot с той лишь разницей что выводит график в виде отдельных точек, вместо линий. Формат идентичен listplot

Page 10: Программирование. Лекция 3

Обработка ошибок При представлении выражений в виде графиков не

должно быть неопределенных переменных. В этом случае вы увидите ошибку

Page 11: Программирование. Лекция 3

VII. Задание функцийФункции задаются в следующем формате:<переменная функции>:=(<переменная(ые) аргумента>)->(<выражение>);

Page 12: Программирование. Лекция 3

VIII. 3х-мерные графики.Для вывода 3х-мерного графика используется функция plot3d. В отличие от функции plot для графиков на плоскости выражение должно быть функцией 2х переменных.

Примеры:plot3d(sin(x+y), x=-1..1, y=-1..1);plot3d([x*sin(x)*cos(y), x*cos(x)*cos(y), x*sin(y)], x=0..2*Pi, y=0..Pi);

Page 13: Программирование. Лекция 3

IX. АнимацияДля создания анимации используется команда animate. Она способна выводить как 2х-мерную, так и 3х-мерную графику.

Формат:

animate(<имя графической функции>,[<параметры графической функции>],<диапазон изменения по времени>,<управляющие параметры>);

Примерыanimate( plot, [sin(t), t=0..x], x=0..4*Pi );

animate( plot3d, [sin(A)*(x^2+y^2), x=-2..2, y=-2..2], A=0..2*Pi );

animate( spacecurve, [[cos(t), sin(t), (2+sin(A))*t],t=0..20, thickness=5, numpoints=100, color=black], A=0..2*Pi );

Page 14: Программирование. Лекция 3

X. Управляющие параметрыУправляющие параметры предназначены для изменения визуального представления графика.

1.Цвет и шрифт1.1 color = <цвет>. Задает цвет графика. Цвет пишется английским именем. color = blue

1.2 font = [<гарнитура>,<стиль>,<размер в пикселях>]

гарнитура: TIMES,COURIER,SYMBOL

стиль: BOLD, ITALIC

font = [TIMES,BOLD,16]

1.3 толщина линии. thickness=<число>. Толщина указывается в пикселях. thickness=5

Page 15: Программирование. Лекция 3

X.2 Управляющие параметры2. Оси и заголовки2.1 Подпись к графику: title = “<строка>”

title = “кривая роста успеваемости”

2.2 Шрифт подписи titlefont=<font>

2.3 Количество насечек по они X: xtickmarks=<число насечек>

xtickmarks = 20;

2.4 Количество насечек по они Y: ytickmarks=<число насечек>

ytickmarks = 50;

2.5 Метки осей: labels = [“<метка оси X>”,”<метка оси Y>”]

labels = [“время”,”скорость”]

Page 16: Программирование. Лекция 3

X.3 Управляющие параметры3. Масштабирование системы

координат и разрешение3.1 Тип координатных осей: coords = <тип осей>. Тип осей:

polar, cylindric, cartesian. coords = polar

3.2 Масштабирование: scaling=<масштаб>.Масштаб: CONSTRAINED,UNCONSTRAINED. scaling=UNCONSTRAINED

3.3 Область вывода в координатах графика: view=[xmin..xmax, ymin..ymax, zmin..zmax]. view=[-10..10,-1..2]

3.4 Число точек: numpoints=<число>. numpoints=100

3.5 Разрешение: resolution=<точек на дюйм>. resolution=96

Page 17: Программирование. Лекция 3

Примерыplot([sin(4*x),x,x=0..2*Pi],coords=polar,thickness=3);

plot([sin, cos], -Pi..Pi, title="Simple Trig Functions", legend=["Sine", "Cosine"]);

Page 18: Программирование. Лекция 3

Спасибо за внимание