Графики и анимация
Maple 9 реализует всевозможные варианты математических графиков. Строятся как графики простых функций в декартовой и полярной системах координат, так и графики, показывающие реалистические образы сложных, пересекающихся в пространстве фигур с их функциональной окраской. Возможны наглядные графические иллюстрации решений самых разнообразных уравнений, включая системы дифференциальных уравнений.
В само ядро Maple 9 встроено ограниченное число функций построения графиков. Это прежде всего функция для построения двумерных графиков plot и функция для построения трехмерных графиков plot3d. Они позволяют строить графики наиболее распространенных типов. Для построения специальных графиков (например, векторных полей градиентов, решения дифференциальных уравнений, построения фазовых портретов и т. д.) в пакеты системы Maple 9 включено большое число различных графических функций. Для их вызова необходимы соответствующие указания.
Графические объекты можно использовать в качестве значений переменных, то есть переменным можно присваивать значения графических объектов и выполнять над ними соответствующие операции (например, с помощью функции show выводить на экран несколько графиков).
Графические функции заданы таким образом, что обеспечивают построение типовых графиков без какой-либо особой подготовки. Для этого нужно лишь указать функцию, график которой строится, и пределы изменения независимых переменных. Однако с помощью дополнительных необязательных параметров можно существенно изменить вид графиков — например, настроить стиль и цвет линий, вывести титульную надпись, изменить вид координатных осей и т. д.
Основная функция построения двумерных графиков plot
В математике широко используются зависимости вида y(x). Их графики строятся на плоскости в виде ряда точек y1(x1), обычно соединяемых отрезками прямых. Таким образом, используется кусочно-линейная интерполяция двумерных графиков. Если число точек графика достаточно велико (десятки или сотни), то приближенность построения не очень заметна.
Для построения двумерных графиков служит функция plot(f, h, v, о),
где f — визуализируемая функция, h — переменная с указанием области ее изменения, v — необязательная переменная с указанием области изменения, о — параметр или набор параметров, задающих стиль построения графика (толщину и цвет кривых, тип кривых, метки на них и т. д.).
Самыми простыми формами задания этой функции являются следующие:
plot(f ,xrnin,xmax) — построение графика функции f, заданной только своим именем;
plot(f(x),x=xmin,xmax) — построение графика функции f(x),
> plot(sin(x), x=-Pi..Pi);
Диапазон изменения независимой переменной х задается диапазоном xmin..xmax, где xmin и xmax — минимальное и максимальное значение х, .. (две точки) — составной символ, указывающий на изменение независимой переменной.
Помимо построения самой кривой у(х) или f(x) можно задать ряд других свойств графиков, например вывод координатных осей, тип и цвет линий графика и др. Это достигается применением параметров графика — специальных указаний для Maple. Графики обычно строятся сразу в достаточно приемлемом виде. Это достигается тем, что многие параметры задаются по умолчанию, и пользователь, по крайней мере начинающий, может о них ничего не знать. Однако язык общения и программирования Maple 9 позволяет задавать управляющие параметры и в явном виде.
Для двумерного графика возможны следующие параметры:
axes — вывод различных типов координат (axes=NORMAL — обычные оси, выводятся по умолчанию, axes=BOXES — график заключается в рамку с осями-шкалами, axes=FRAME — оси в виде перекрещенных линий, axes=NONE — оси не выводятся);
axes font — задание шрифтов для подписи делений на координатных осях (см. также параметр font);
color — задает цвет кривых (см. далее);
discont — задает построение непрерывного графика (значения true или false);
font — задание шрифта в виде [семейство, стиль, размер];
labels — задание надписей по координатным осям в виде [X, Y], где X и Y — надписи по осям х и у графика;
label directions — задает направление надписей по осям [X, Y], где X и Y может иметь строковые значения HORISONTAL (горизонтально) и VERTICAL (вертикально);
label font — задает тип шрифта подписей (см. font);
legend — задает вывод легенды (обозначения кривых);
linestyle — задание стиля линий (1 — сплошная, 2 — точками, 3 — пунктиром и 4 — штрихпунктиром);
numpoints — задает минимальное количество точек на графике (по умолчанию numpoints=49);
scaling — задает масштаб графика: CONSTRAINED (сжатый) или UNCONSTRAINED (несжатый — по умолчанию);
size.— задает размер шрифта в пунктах;
style — задает стиль построения графика (POINT — точечный, LINE — линиями);
symbol — задает вид символа для точек графика (возможны значения BOX — прямоугольник, CROSS — крест, CIRCLE — окружность, POINT — точка, DIAMOND — ромб);
symbol size — установка размеров символов для точек графика (в пунктах, по умолчанию 10);
title — задает построение заголовка графика (title="string", где string — строка);
titlefont — определяет шрифт для заголовка;
thickness — определяет толщину линий графиков (0, 1, 2, 3, значение по умолчанию — 0);
view=[A, В] — определяет максимальные и минимальные координаты, в пределах которых график будет отображаться на экране, А = [xmin. .xmax], B=[ymin. .ymax] (по умолчанию отображается вся кривая);
xtickmarks — задает минимальное число отметок по оси x,
ytickmarks — задает минимальное число отметок по оси у.
В основном задание параметров особых трудностей не вызывает, за исключением задания титульной надписи с выбором шрифтов по умолчанию — в этом случае не всегда поддерживается вывод символов кириллицы (русского языка). Подбором подходящего шрифта эту проблему удается решить. Модификация графиков с помощью управляющих параметров подробно рассматривается ниже.
Специальный параметр adaptive задает работу специального адаптивного алгоритма для построения графиков наилучшего вида. При этом Maple автоматически учитывает кривизну изменения графика и увеличивает число отрезков прямых в тех частях графиков, где их ход заметно отличается от интерполирующей прямой. При задании adaptive=false адаптивный алгоритм построения графиков отключается, а при adaptive=true включается (значение по умолчанию).
В версии Maple 9 параметр coords задает 15 типов координатных систем для двумерных графиков. По умолчанию используется прямоугольная (декартова) система координат (coords=cartesian). Например:
> plot(sin(x), x=-4*Pi..4*Pi, labels=[x,y],
labelfont=[TIMES,ITALIC,14], thickness=4);
Maple 9 позволяет воспроизводить на одном графике множество кривых. При этом возникает необходимость как-то идентифицировать их. Для этого можно использовать построение линий разными стилями, разными цветами и с разной толщиной. Набор средств выделения кривых позволяет уверенно различать их как на экране цветного дисплея и в распечатках, сделанных цветным струйным принтером, так и при печати монохромными принтерами. Параметр color позволяет использовать обширный набор цветов линий графиков: аquamarine, black, blue, navy, coral, cyan, brown, gold, green, gray, grey, khaki, magenta, maroon, orange, pink, plum, red, sienna, tan, turquoise, violet, wheat, white, yellow.
Для управления отображаемой на графике области служит задание диапазонов принимаемых значений для переменной и функции. В ряде случаев их можно не применять, тогда Maple автоматически задает приемлемые диапазоны. Однако их явное указание позволяет управлять областью графика вручную. Иногда соответствующее задание диапазонов случайно или целенаправленно ведет к отсечению части графика. Правильный выбор диапазонов повышает представительность графиков функций. Рекомендуется вначале пробовать строить графики с автоматическим выбором диапазонов, а уже затем указывать их вручную.
Изредка встречаются графики функций f(x), которые надо построить при изменении значениях от нуля до бесконечности или даже от минус бесконечности до плюс бесконечности. Бесконечность в таких случаях задается как особая константа infinity. В этом случае переменной х, устремляющейся в бесконечность, откладывается значение аrctan(x)..
Некоторые функции, например tan(x), имеют при определенных значениях х разрывы, причем случается, что значения функции в этом месте устремляются в бесконечность. Построение графиков таких функций нередко дает плохо предсказуемые результаты. Графический процессор Maple 9 не всегда в состоянии определить оптимальный диапазон по оси ординат, а график функции выглядит весьма непредставительно.
Среди аргументов функции plot есть специальный параметр discont. Если задать его значение равным true, то качество графиков существенно улучшается, Улучшение достигается разбиением графика на несколько участков, на которых функция непрерывна, и более тщательным контролем за отображаемым диапазоном. При discont=false данный параметр отключен и строятся обычные графики.
Следует отметить, что вид графика можно улучшить, просто задав диапазон по оси у, например, введя в параметры функции запись у=-10..10). При этом в точках разрыва могут появиться вертикальные линии. Иногда это бывает полезно. Например:
> plot(x/(x^2-1),x=-3..3,y=-3..3,color=magenta,thickness=4);
Важное значение имеет возможность построения на одном рисунке графиков нескольких функций. В простейшем случае для построения таких графиков достаточно перечислить нужные функции и установить для них общие интервалы изменения.
Обычно графики разных функций автоматически строятся разными цветами. Но это не всегда удовлетворяет пользователя — например, при распечатке графиков монохромным принтером некоторые кривые могут выглядеть слишком блеклыми или даже не пропечататься вообще. Используя списки параметров color (цвет линий) и style (стиль линий), можно добиться выразительного выделения кривых. Например:
Два графика на одной координатной плоскости
> plot([x^2,x^3],x=-2..2,linestyle=[1,3],thickness=4);
Однако часто возникает необходимость построения графиков функций, которые представлены просто совокупностями точек. Такая совокупность может быть создана искусственно, либо просто задаваться списком координат х и значений функции.
В данном случае переменная Р имеет вид списка, в котором попарно перечислены координаты точек функции sin(x).
Графики функций, заданных своими именами
Имеется возможность построения графиков функций, заданных только их функциональными именами — даже без указания параметров в круглых скобках.
При этом диапазон по горизонтальной оси устанавливается равным по умолчанию -10.. 10, а по вертикальной оси выбирается автоматически в соответствии с экстремальными значениями функций в указанном диапазоне изменения независимой переменной (условно х).
В ряде случаев для задания функциональных зависимостей используются заданные параметрически уравнения, например х = f1(t) и у =f2(t) при изменении переменной t в некоторых пределах. Точки(х, у) наносятся на график в декартовой системе координат и соединяются отрезками прямых. Для этого используется функция plot в следующей форме:
plot([fl(t),f2(t),t-tmin..tmax].h,v.p)
Если функции f1(£) и f2(0 содержат периодические функции (например, тригонометрические), то для получения замкнутых фигур диапазон изменения переменной t обычно задается равным 0. .2*Pi или -Pi..Pi. К примеру, если задать в качестве функций f1(t) и f2(t) функции sin(t) и cos(t), то будет получен график окружности. Рисунок 11.13 показывает другие, чуть менее тривиальные примеры построения графиков такого рода.
Задание диапазонов для изменений h и v, а также параметров р не обязательно. Но, как и ранее, они позволяют получить вид графика, удовлетворяющий всем требованиям пользователя. Например:
> plot([sin(2*t),cos(3*t),t=0..2*Pi], axes=BOXED, color=blue);
При построении графика значения функции считаются численно, поэтому определение функции не должно содержать символьные переменные. Масштаб по оси OY выбирается автоматически, поэтому если функция содержит вертикальные асимптоты, то масштаб может оказаться слишком мелким. В этом случае необходимо задать в качестве дополнительного параметра интервал, отображаемый по оси OY:
> plot(1/x,x=-3..3,-10..10);
В этом примере строится график функции 1/x, при этом на оси OX отображается отрезок [-3,3], на на оси OY – [-10,10].
На одном рисунке могут быть изображены графики нескольких функций, для этого вместо функции необходимо задать список функций: перечислив их в квадратных скобках через запятую. Пример построения графиков x2 и x3 на одном рисунке:
> plot([x^2,x^3],x=-2..2);
Трехмерные графики функций двух переменных строятся при помощи функции plot3d. Ее синтаксис: plot3d(f(x,y),x=a..b,y=c..d). Пример построения графика функции x*sin(y):
> plot3d(x*sin(y),x=-2..2,y=-Pi..Pi);
На панели инструментов есть ряд кнопок, позволяющих вращать построенный график в пространстве, изменять масштабы по осям координат и переключать режимы отображения осей.
Если необходимо задать интервал, который будет отображаться на оси OZ, необходимо задать еще один параметр view=e..f (в отличие от плоских графиков необходимо написать слово view).
- Содержание
- Введение
- Лекция 1. Введение в курс. Классификация компьютерных информационных технологий
- Предмет дисциплины. Понятие «компьютерные информационные технологии»
- Технологическая схема обработки информации
- Базовые и специальные информационные технологии
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 2. Информационные ресурсы автоматизированных систем обработки экономической информации
- Понятие «информационные ресурсы». Классификация
- Политика Республики Беларусь в области формирования информационных ресурсов
- Информационные услуги, режимы их предоставления
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 3. Техническое обеспечение компьютерных информационных технологий
- Классификация эвм
- Процессоры
- Устройства автоматизации ввода данных
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 4. Сетевые информационные технологии. Компьютерные сети: основные понятия и принципы построения
- Компьютерные сети: понятие, классификация
- Топология компьютерной сети
- Модель коммутационной сети
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 5. Локальные вычислительные сети
- 1. Оборудование лвс
- 2. Методы доступа к сети
- 3. Стандарты локальных сетей
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 6. Сетевые информационные технологии. Сетевые модели
- Эталонная модель osi
- Конвергенция компьютерных и телекоммуникационных сетей
- Корпоративные сети
- Преимущества, которые дает использование сетей
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 7. Глобальные компьютерные сети
- 1. Глобальная сеть Интернет, протоколы tcp/ip
- 2. Адресация компьютеров в сети
- 3. Услуги Интернет
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 8. Сетевые ит. Интернет и бизнес
- Задачи бизнеса в Интернете
- Классификация электронного бизнеса
- 3. Правовые аспекты электронного бизнеса
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 9. Сетевые информационные технологии. Электронные платежные системы
- Виды платежных систем
- Услуги платежных систем в Беларуси
- Формирование сетевой экономики
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 10. Технологии обеспечения безопасности информационных систем
- 1. Понятие безопасности информационных систем
- 2. Угрозы информационно безопасности
- 3. Методы и средства защиты информации
- Физические и юридические лица имеют право
- Особенности обеспечения безопасности в компьютерных сетях
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 11. Программное обеспечение компьютерных информационных технологий. Системное по
- Модели разработки и распространения по
- Виды лицензий на использование по
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 12. Программное обеспечение компьютерных информационных технологий. Прикладное по
- Технологии обработки информации. Офисные пакеты
- Технологии автоматизированного ввода документа (осr-системы)
- Технологии автоматизации перевода текстов
- Технологии организации рабочего места
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 13. Технологии искусственного интеллекта
- Понятие искусственного интеллекта
- 2. Области применения ии
- Понятие экспертной системы
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 14. Пакеты для математической обработки данных. Maple. Основы работы
- Компоненты экрана, справочная система Maple
- Вычисления в Maple
- Числа и константы
- Стандартные функции
- Преобразование математических выражений
- Решение уравнений
- Численное решение уравнений
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 15. Пакеты для математической обработки данных.Maple. Матрицы и графики
- Работа с массивами
- Графики и анимация
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 16. Технологии и инструментальные средства программирования. Основы алгоритмизации
- 1. Понятие алгоритма
- 2. Типы алгоритмических процессов
- Повторять:
- 3. Способы записи алгоритмов
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция №17. Технологии и инструментальные средства программирования. Языки программирования
- Технологии разработки программных комплексов
- Классификация языков программирования
- Инструментальные средства программирования
- Контрольные вопросы
- Литература
- Основные понятия