ЛЕКЦИЯ №8 ТЕМА: ПОСТРОЕНИЕ И ФОРМАТИРОВАНИЕ ГРАФИКОВ ВОПРОСЫ: 1. Графики в декартовой системе координат. 2. Графики в полярной системе координат (Polar Plot). 3. График параметрически заданной функции. Почти ни один технический расчет не обходится без построения графиков. Графики являются удобнейшим средством представления любой информации. MathCAD обладает обширным арсеналом средств для построения двух- и трехмерных графиков и диаграмм. На графиках могут быть изображены как функции, так и наборы данных (массивы), хотя в действительности при изображении функций они преобразуются в набор точек, т.е. в тот же массив. Графики функций одной переменной (двухмерные графики). 1. Графики в декартовой системе координат. При построении графика функция представляется в виде набора точек на плоскости. Т.е. для построения графика перебирается определенное количество значений аргумента, и для каждого из них вычисляется значение функции. При упрощенном способе построения, когда диапазон аргумента задается автоматически, по оси абсцисс выбирается диапазон [-10, 10], а количество точек равно 100. Для того, чтобы иметь возможность при построении графика управлять количеством точек, аргумент надо задать как ранжированную переменную. При этом количество точек можно менять либо через шаг ранжированной переменной, либо непосредственно задавать количество точек N. Изображение нескольких функций на одном графике. Для этого нужно ввести их в поле ввода функции через запятую (при этом каждая из них может зависеть от своего аргумента). Если необходимо, можно также через запятую ввести аргументы каждой функции в поле ввода аргументов. Максимально можно изобразить на одном графике 16 различных функций. Функции, построенные на одном графике, изображаются линиями различного цвета и типа. Цвета и типы линий можно изменить. Ранжированные переменные дают возможность построить не только график функции, но и графически изобразить одномерный массив или вектор. В этом случае ранжированная переменная играет роль индекса – номер элемента вектора. Поэтому ее шаг обязательно должен равняться единице. Масштаб. Черные уголки на графике означают, что границы по осям выбираются автоматически. Границы можно изменить, для этого вместо старого значения надо ввести новое. Если необходимо, чтобы граница снова устанавливалась автоматически, то нужно щелкнуть на этой границе и удалить введенное в нее число, оставив незаполненным поле ввода. Если после этого установить курсор где-нибудь вне графика, то удаленная граница будет выбрана автоматически. Есть другой более удобный способ изменения масштаба графика: установить курсор на поле графика, вызвать контекстное меню, выбрать команду Zoom, появится диалоговое окно; после чего на поле графика выбрать область, которую надо увеличить, а в диалоговом окне выбрать кнопку Zoom. Чтобы увеличить масштаб всего графика, надо пользоваться черными квадратиками, расположенными справа и внизу по границе графика. Трассировка. Трассировка позволяет очень точно изучить строение графика. Для того, чтобы включить режим трассировки, щелкните в области графика правой кнопкой мыши и выберите в контекстном меню пункт Trace. В результате появится окно трассировки, а в окне графика вы увидите две пересекающиеся пунктирные линии. Перемещая указатель по графику, вы тем самым передвигаете точку пересечения линий трассировки. При этом координаты точки указываются с высокой точностью в окне трассировки в полях X-Value иY-Value. Нажатие кнопки Copy X или Copy Y копирует соответствующее число в буфер обмена. В дальнейшем его можно вставить в любое место документа или в маркер. 2. Графики в полярной системе координат (Polar Plot). В полярной системе координат каждая точка задается двумя координатами: радиус-вектором и полярным углом. При изображении графика в полярной системе координат функция обычно задает зависимость радиус-вектора от угла. Если аргумент не был описан ранее как ранжированная переменная, то выбирается стандартный диапазон изменения угла - 2. Для полярного графика можно изменять границы только радиусвектора. Поля для изменения этих границ расположены справа от графика. Здесь проявляется особенность полярных графиков в MatCAD – возможность установки для нижней границы радиус-вектора значений, отличных от нуля, т.е. можно получить график, для которого в начале координат радиус будет равняться, например, пяти. 3. График параметрически заданной функции. В выше приведенных графиках при их построении в одном поле ввода задавали функцию, а в другом – аргумент. Но, кроме явного, существуют и другие способы задания функции. Например, можно задать функцию параметрически, т.е. указать зависимость обеих координат от некоторого параметра. В MathCAD можно построить график неявно заданной функции, если ввести в оба поля ввода функции, зависящие от одного параметра Выше приведенные команды Zoom и Trace также справедливы для полярных графиков и для параметрически заданных. Форматирование двухмерных графиков. Вызов диалогового окна для форматирования графика осуществляется двойным щелчком мыши по полю графика. Можно форматировать оси графика (X-Y Axes), линии на графике (Traces) – это форматирование понятно из контекста. Для нанесения текстовых подписей используется вкладка Labels. Текстовые подписи форматируются стилем Variable, который используется для всех буквенных выражений в вычисляемых блоках. Для того чтобы этот стиль правильно отображал русские буквы, установите курсор на любом буквенном выражении в блоке формул или на графике. При этом в поле, отображающем текущий стиль, должно быть написано – Variable. Теперь выберите из раскрывающегося списка шрифтов шрифт, поддерживающий кириллицу, Times New Roman Cyr. После этого все введенные на русском языке подписи к графикам отобразятся правильно. Этот способ вставки подписей имеет несколько существенных недостатков: нельзя изменить их положение относительно осей, нельзя изменить форматирование шрифта конкретной подписи, нельзя создать подписи непосредственно в области осей координат для большей наглядности графика. Поэтому есть также другой, лишенный перечисленных недостатков, способ – ввести все необходимые подписи в виде текстовых блоков, отформатировать их нужным образом, а затем «перетащить» их в нужное место графика. После надо вызвать контекстное меню и выбрать команду «Bring to Front» (поместить перед графиком), иначе подпись будет невидимой, она закрыта полем графика. Графики функций двух переменных (трехмерные графики). Не все графики, называемые трехмерными в MathCAD, являются трехмерными в действительности. Они называются трехмерными только потому, что отображают функции двух переменных (или матрицы). В MathCAD есть следующие типы трехмерных графиков. Surface Plot (График поверхности) – график в виде трехмерной поверхности; Contour Plot – (Контурный график или линии уровня) – также график поверхности, но спроектированный на одну из координатных плоскостей, а изменение функции по оставшейся оси изображается в виде линии уровня; Scatter Plot – отображение набора точек в трехмерном пространстве; Vector Field Plot – изображение двухмерного векторного поля; Bar Plot – трехмерная гистограмма; Patch Plot - также гистограмма, но отображающая только верхние грани столбиков. Для каждого из этих графиков, кроме Patch Plot, есть отдельная кнопка на панели инструментов Graph. Также можно выбрать тип графика уже после создания в окне форматирования. После выбора соответствующего типа графика появится шаблон с тремя координатными осями и местозаполнителем. В этот местозаполнитель следует ввести либо имя z функции двух переменных z(x,y) для быстрого построения трехмерного графика, либо имя матричной переменной Z, которая задает распределение данных ZX,Y на плоскости XY. Для графиков, основой которых служат матрицы, шкалу плоскости XY приходится задавать вручную. MathCAD просто рисует поверхность, точки в пространстве или линии уровня, основываясь на двумерной структуре этой матрицы. При быстром же построении графиков имеется возможность строить их в различном диапазоне аргументов, подобно двумерным графикам. Вид трехмерного графика зависит от того, как он развернут относительно точки просмотра. Можно: 1) задавать угол обзора из окна форматирования мышью; 2) при нажатой клавише Ctrl можно мышью удалять или приближать объект к наблюдателю; 3) при нажатой клавише Shift можно инициировать анимацию («живую» картинку), для останова вращения надо щелкнуть кнопкой мыши. Если строится графики нескольких функций в одном шаблоне, то имена функций следует разделить запятыми. График линий уровня. Линией уровня функции двух переменных X, Y называется геометрическое место точек в плоскости xOy, в которых функция принимает одно и то же значение. Линии уровня функции z = f(x,y) определяются уравнением f(x,y) = c, где с = const. Показ цифр на графике можно включить вкладки окна форматирования трехмерного графика. Векторное поле. График векторного поля несколько отличается от остальных типов двухмерных графиков. Его смысл заключается в построении некоторого вектора в каждой точке плоскости XY. Чтобы задать вектор на плоскости, требуется два скалярных числа. Поэтому в MathCAD принято, что векторное поле задает комплексная матрица. Действительные части каждого ее элемента определяют проекцию вектора на ось X, а мнимые – на ось У. Можно матрицу набрать вручную. А можно ее представить и как векторную функцию. График параметрически заданной поверхности и график параметрически заданной кривой. Для параметрического задания поверхности требуется три функции двух переменных. Каждая из этих функций задает одну из координат точек поверхности. Эти три функции нужно ввести в поле ввода трехмерного графика через запятую. Но для того, чтобы они воспринимались как одна поверхность, их нужно взять в скобки. Диапазон изменения параметрических переменных, так же как и в случае простого графика поверхности, можно изменить с помощью полей вкладки в окне форматирования трехмерного графика. Кроме параметрической поверхности, можно также изобразить на трехмерном графике параметрическую кривую. Для этой цели подойдет трехмерный график типа Scatter Plot (точечный график). Параметрическая кривая в пространстве задается тремя функциями одной переменной. Для того чтобы получить приведенный выше график, на вкладке окна форматирования графика в группе Range был установлен диапазон изменения параметрической переменной от 0 (поле ввода Start) до 20 (поле End) и количество точек – 50. Остальные типы графиков (точечные, гистограмма) пояснений не требуют. Форматирование трехмерных графиков. MathCAD представляет очень богатые возможности для форматирования трехмерных графиков. Для вызова диалогового окна форматирования трехмерного графика достаточно по полю графика сделать двойной щелчок мышью. В этом окне доступно большое количество параметров, изменение которых способно очень сильно повлиять на внешний вид графика. сгруппированы по принципу действия на нескольких вкладках. Они Вкладка позволяет изменить тип графика (поле Plot), ориентацию графика в пространстве (Rotation – вращение, Tilt – наклон, Twist – поворот, Zoom - масштаб), менять стиль осей (Perimeter – периметр, Corner – углом, None – оси отсутствуют), можно задать изображение куба (флажок Show Box). Вкладка содержит три вложенных вкладки ,в которых задаются параметры для каждой из трех координатных осей. Вкладка (Внешний вид) задает стиль заливки и стиль линий. При выборе переключателя (заливка поверхности) из группы (опции заливки) вы получите доступ к опциям цвета (в группе ). Если выбрать переключатель выполняется однотипная переключатель заливка поверхности. (одни цвет), то Если установить (цветовая схема или градиентная заливка), то поверхность или контурный график будут залиты разными цветами и оттенками, причем выбрать цветовую схему можно на вкладке (освещение). На вкладке также можно изменять формат линий и формат точек данных На вкладке . надо включить флажок . После этого станут активными все параметры на вкладке. Здесь можно включить и настроить до восьми различных источников света, для каждого из них есть отдельная вкладка и т.д. Но для того чтобы быстро создать освещение для графика, лучше воспользоваться заготовленными схемами освещения. Их можно выбрать из раскрывающегося списка (схема освещения). Во вкладке (дополнительно) имеется доступ к управлению несколькими специальными эффектами оформления графиков, благодаря которым они смотрятся более красиво, например: значение можно менять в пределах - сияние, 0128; (туман); (прозрачность), задается процент прозрачности графика и др. Во вкладке задается заголовок графика, который можно расположить как сверху графика, так и снизу. Во вкладке (плоскость заднего плана) задается показ проекций координатной сетки на три скрытые плоскости трехмерного графика. Во вкладке можно изменить диапазон изменения координат X и Y. На этой вкладке есть группы элементов (диапазон 1) и (диапазон 2). В полях ввода Start и End этих групп можно указать диапазоны изменения обеих переменных. Также здесь можно указать тип координатной системы Цилиндрическая. Пример: : - Декартова, - Сферическая, - На этом рисунке представлен один и тот же график до и после форматирования. Для форматирования были применены следующие установить переключатель и действия: во вкладке 1. ; 2. во вкладке в группе установлен переключатель (это приведет к тому, что положение осей перестанет быть жестким, теперь они будут располагаться по периметру куба, ограничивающего график, и всегда на его передних гранях); 3. группе во вкладке на каждой из вкладок установить флажок в (отобразить линии), это приведет к отображению линий сетки, активизируя поле можно установить необходимый цвет линий сетки; 4. во вкладке раскрывающегося включить списка флажок выбрать , схему из освещения ; 5. на не отформатированном графике линии на графике изображены в виде так называемого каркаса (вкладка ), это очень загромождает график. Лучше линии отобразить в виде линий уровня по оси z. Для этого во вкладке в группе (параметры линий уровня) выбрать из раскрывающегося списка - линии уровня по z, далее в этой же группе следует установить флажок (отобразить линии); если плотность линий уровня оказалась слишком маленткой или слишком большой, то надо сбросить флажок и в поле ввода ввести необходимое число, в нашем случае это число 19. Анимация Во многих случаях самый зрелищный способ представления результатов математических расчетов – это анимация. MathCAD позволяет создавать анимационные ролики и сохранять их в видеофайлах. Основной принцип анимации – покадровая анимация – это просто последовательность кадров, представляющих собой некоторый участок документа, который выделяется пользователем. Расчеты производятся обособленно для каждого кадра, причем формулы и графики, которые в нем содержатся, должны быть функцией от номера кадра. Номер кадра задается системной переменной , которая может принимать лишь натуральные значения. По умолчанию, если не включен режим подготовки анимации, =0. Рассмотрим последовательность действий для создания ролика анимации, например, демонстрирующего перемещение гармонической волны. При этом каждый момент времени будет задаваться переменной . Введите в документ необходимые выражения и графики, в которых участвует переменная номера кадра . Подготовьте часть документа, которую вы желаете сделать анимацией, таким образом, чтобы она находилась в поле вашего зрения на экране. В нашем примере подготовка сводится к определению функции f(x,t) = sin(x-t) и создании ее декартова графика f(x,FRAME). Выполните команду Tools|Animation|Record. В диалоговом окне Animate задайте номер первого кадра в поле From(От), номер последнего кадра в поле To (До) и скорость анимации в поле At (Скорость) в кадрах в секунду. Выделите протаскиванием указателя мыши область в документе, которая станет роликом анимации. В диалоговом окне Animate нажмите кнопку Animate. После этого в окошке диалогового окна Animate будут появляться результаты расчетов выделенной области, сопровождающиеся выводом текущего значения переменной . По окончании этого процесса на экране появится окно проигрывателя анимации. Запустите просмотр анимации в проигрывателе нажатием кнопки воспроизведения в левом нижнем углу окна проигрывателя. В случае если вид анимации вас устраивает, сохраните ее в виде видеофайла, нажав кнопку Save As в диалоговом окне Animate. Закройте диалог Animate. Сохраненный видеофайл можно использовать за пределами MathCAD. Если в Проводнике Windows дважды щелкнуть на имени этого файла, он будет загружен в проигрыватель видеофайлов Windows, и вы увидите его на экране компьютера. Таким образом, запуская видеофайлы обычным образом, можно устроить красочную презентацию результатов работы как на своем, так и на другом компьютере. Ввод/вывод во внешние файлы. Для общения с внешними файлами в MathCAD встроены следующие функции: READPRN (“file”) – чтение данных в матрицу из текстового файла; WRITEPRN(“file”) – запись данных в текстовый файл; APPENDPRN(“file”) – дозапись данных в существующий текстовый файл, где file – путь к файлу. Вопросы 1. Каким образом представляется функция при построении графика? График в декартовой системе координат: создание, задание аргумента по умолчанию, в виде ранжированной переменной, изображение нескольких функций на одном графике, работа с командами «масштаб» и «трассировка». 2. Построение графика в полярной системе координат и графика параметрически заданной функции. 3. Форматирование 2-х мерных графиков. Размещение надписей на поле графика. 4. Перечислите графики функций двух переменных, которые может строить MathCAD. Объясните, как строятся график поверхности? Каким образом на трехмерном графике можно изменить масштаб изображения, угол поворота? И как можно задать «живую» картинку? 5. Расскажите о контурных и векторных графиках в MathCAD. Объясните их. 6. Как строятся в MathCAD графики параметрически заданной поверхности и параметрически заданной кривой? 7. Расскажите о форматировании 3-хмерных графиков. 8. Что такое анимация и как она создается в системе MathCAD? 9. Как осуществляется ввод/вывод во внешние файлы в системе MathCAD?