Читайте также:
|
|
Plot[{f1, f2, …}, {x, xmin, xmax}] – график одной или нескольких функций, заданных формулами, на отрезке от xmin до xmax.
ListPlot[{{x1, y1}, {x2, y2},…}] – график списка точек с координатами (x, y). Если x принимает натуральные значения: xi=i, i=1, 2, 3, …, – то значения x могут быть опущены.
ListPlot[{list1, list2, …}] – график нескольких списков точек.
Размер точек можно задать с помощью опции PlotStyle, например PlotStyle->PointSize[0.03]. Точки могут быть соединены; для этого используется опция Joined -> True. Если точки соединены, то действие опции PointSize отменяется.
ParametricPlot[{{x1(t), y1(t)}, {x2(t), y2(t)}, …}, {t, tmin, tmax}] – график функций, заданных параметрически.
PolarPlot[{r1, r2,..}, {j, j min, j max}] – график функций в полярных координатах.
Для того, чтобы построить двумерный график, например, график функции Sin[x] на отрезке [0, 2p], достаточно написать простую команду:
In[ ]: = p1=Plot[Sin[x], {x, 0, 2Pi}]
Полученный график показан на рис. 11.1. Данному графику присвоено имя p1. Имя не является обязательным элементом команды. Имя нам нужно только для того, чтобы рассмотреть свойства графика. Напишем команду:
In[ ]: = Options[p1]
Запустив команду на счет, получим список значений опций, установленных по умолчанию:
Out[]=
{AspectRatio->1/GoldenRatio, Axes->True, AxesOrigin->{0,0}, PlotRange->{{0, 2Pi},{-1.,1.}},
PlotRangeClipping->True, PlotRangePadding->{Scaled[0.02],Scaled[0.02]}}
Помимо установок по умолчанию имеется много дополнительных возможностей для изменения свойств графиков. Подробное описание всех опций можно найти в разделе Справка (Help). Остановимся только на некоторых из опций.
PlotRange – задает диапазон изменения координаты y. Например, PlotRange->All – вывод всего диапазона изменений y, PlotRange->{0, 1} – вывод на график только значений y в пределах от 0 до 1.
AspectRatio – задает отношение длины оси y к длине оси x. По умолчанию, это отношение задается в пропорции “золотого сечения”. Это приводит к тому, что круг превращается в эллипс, квадрат – в прямоугольник и т.п. Отношение длин осей может быть задано произвольным числом. Если задана опция AspectRatio –> Automatic, то отношение длин осей подсчитывается автоматически из условия равенства масштабов по обеим осям. Значение AspectRatio –> Automatic необходимо использовать, если требуется сохранить неискаженные пропорции изображаемых фигур.
Замечание. Для параметрических, полярных графиков и примитивов по умолчанию устанавлены одинаковые масштабы по осям координат.
Опция GridLines –> Automatic вводит линии сетки.
Некоторые из опций изучим в процессе их применения.
Пример 11.1.
Напишем команду для вывода графика двух функций:
In[ ]: = Plot[ {Sin[x], Cos[x]}, {x, 0, 2Pi}, PlotStyle ->{RGBColor[1, 0, 0], RGBColor[0, 0, 1]},
PlotRange ->{-1.3, 1.3}, Prolog ->Text["Sin[x]",Scaled[{0.28, 0.96}]],
Epilog -> Text["Cos[x]",Scaled[{0.51, 0.04}]], AxesLabel ->{x, None},
Ticks->{ {{p/2, "p/2"}, {p, "p"}, {3p/2, "3p/2"},
{2p, "2p"}}, {{-1, "-1"}, {1, "1"}} },
AxesStyle->{{RGBColor[1,0,1],Thickness[0.01]},{RGBColor[0,1,1],Thickness[0.01]}},
Filling->{1->Axis}]
Изображаемые функции запишем в виде списка: {Sin[x], Cos[x]}. Раскрасим графики этих функций в разный цвет, используя опцию PlotStyle и функцию RGBColor. Выберем диапазон изменения координаты y от -1.3 до 1.3 так, чтобы осталось место для подписей к графикам. Для создания подписей используем опции Prolog и Epilog и функцию Text. Второй аргумент функции Text задает координаты центра подписи. Слово Scaled означает, что используются относительные координаты: за единицу принимается размер рисунка вдоль соответствующей оси, а координаты отсчитываются от нижнего левого угла рисунка. С помощью опции AxesLabel поставим метку у оси x. Используя опцию Ticks, промаркируем оси координат. Раскрасим оси координат. С помощью функции Thickness сделаем оси утолщенными. С помощью опции Filling->{1->Axis} заполним фоном пространство между графиком функции Sin[x] и осью x. В итоге получим график, показанный на рис. 11.2.
Пример 11.2.
Построим график двух случайных последовательностей точек:
In[ ]: = ListPlot[{Table[Random[Integer, {0,4}], {15}],
Table[Random[Integer, {0,4}]+2, {15}]},
Joined->True, AspectRatio->Automatic]
Соединим точки отрезками прямых линий (опция Joined->True). График показан на рис. 11.3.
11.2. Функции Show, GraphicsRow, GraphicsGrid. Графические примитивы.
Функции GraphicsRow, GraphicsGrid формируют одномерный или двумерный массив графиков. Формат функций:
GraphicsRow[{g1, g2,…}] и GraphicsGrid[{{g1, g2,…},…}],
В первом случае выводится ряд, а во втором – двумерный массив графических объектов g1, g2,…. Один массив может объединять графики разных типов: двухмерные, трехмерные, параметрические и др.
Массивы графиков выводятся с помощью функции Show. Функцию Show можно рассматривать как аналог функции Print, применяемый к графикам. Формат функции при выводе массивов графиков:
Show[GraphicsRow[{g1, g2,…}], options]
или Show[GraphicsGrid[{g1, g2,…}], options]
Функция Show позволяет также выводить в единых координатах разные графические объекты, например, графики разных типов или разные графические примитивы. Формат функции в этом случае: Show[graphics, options], где graphics – список выводимых графических объектов.
Опции функции Show – это графические опции. Если опции функции Show указаны явно, то их значения заменяют собой значения опций, указанных для отдельных графиков.
Пакет Математика включает ряд готовых двухмерных и трехмерных фигур – примитивов. Остановимся только на некоторых из них:
Point[{x, y}], Point[{x, y, z}]; – точка на плоскости или в трехмерном пространстве;
Line[{{x1, y1},…}] – ломаная линия на плоскости или в пространстве;
Polygon[{{x1, y1},…}] – заполненный многоугольник на плоскости или в пространстве;
Rectangle[{xmin, ymin}, {xmax, ymax}] – заполненный прямоугольник;
Circle[{x, y}, r] – окружность радиуса r с центром в точке (x, y);
Disk[{x, y}, r] – заполненный круг r с центром в точке (x, y);
Text[ expr, {x, y}] – текст expr, центр которого находится в точке (x, y).
Пример 11.3.
Построим массив графиков, включающий окружность, прямоугольник и круг (рис.11.4).
In[ ]:= a=Graphics[Circle[{0, 0}], BaseStyle->Hue[1]];
b=Graphics[Rectangle[{-1, -1}, {1, 1}],
AspectRatio->1/GoldenRatio];
c=Graphics[Disk[{0, 0}], BaseStyle->Hue[0.5]];
Show[GraphicsRow[{a,b,c}]]
С помощью опции AspectRatio->1/GoldenRatio превращаем квадрат в прямоугольник “черный квадрат”. Опцию BaseStyle –>Hue[..] используем для окраски фигур. С помощью функции Show выводимна экран массив графиков. Точку с запятой используем для запрета вывода графиков по-отдельности.
Создадим также двумерный массив графиков. Для раскраски используем просто название выбранного цвета.
In[ ]:= a=Graphics[Circle[{0,0},1],BaseStyle ® Black];
b=Graphics[Rectangle[{-1,-1},{1,1}],BaseStyle ® Yellow];
c=Graphics[Disk[{0,0}],BaseStyle ® Cyan];
d=Graphics[ Polygon[
Table[{Sin[Pi/5(1+2n)], Cos[Pi/5(1+2n)]}, {n,5}] ],
BaseStyle ® Magenta ];
Show[GraphicsGrid[{{a,b},{c,d}}]]
Двумерный массив GraphicsGrid показан на рис.11.4А.
Пример 11.4.
Построим в единых координатах два графика разных типов: график окружности в полярных координатах и обычный график функции Sin[1.5 x].
In[ ]:= pc=PolarPlot[1, {fi, 0, 2Pi},
PlotRange->{{-1.6, 1.6}, {-1.1, 1.1}}];
ps=Plot[Sin[1.5 x], {x, -1.6, 1.6}, PlotStyle->Red];
Show[{pc,ps}]
Для вывода графиков разных типов используем функцию Show. Совместный график показан на рис. 11.5.
Дата добавления: 2015-07-08; просмотров: 193 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Массивы | | | Изображения трехмерных объектов |