Maxima Manual: Функции и переменные пакета draw

Next: Функции и переменные для картин, Previous: Введение в пакет draw, Up: Пакет draw [Contents][Index]

### 46.2 Функции и переменные пакета draw

Графическая опция: xrange

  Значение по умолчанию: `auto`

  Если `xrange` равно `auto`, то диапазон координаты x вычисляется автоматически.

  Если требуется определенный интервал x, он должен быть задан в форме списка, например `xrange=[-2, 3]`.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange = [-3,5],
                   explicit(x^2,x,-1,1))$

  См. `yrange` и `zrange`.

  Категории:Пакет draw ·

Графическая опция: yrange

  Значение по умолчанию: `auto`

  Если `yrange` равно `auto`, то диапазон координаты y вычисляется автоматически.

  Если требуется определенный интервал y, он должен быть задан в форме списка, например `yrange=[-2, 3]`.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(yrange = [-2,3],
                   explicit(x^2,x,-1,1),
                   xrange = [-3,3])$

  См. `xrange` и `zrange`.

  Категории:Пакет draw ·

Графическая опция: zrange

  Значение по умолчанию: `auto`

  Если `zrange` равно `auto`, то диапазон координаты z вычисляется автоматически.

  Если требуется определенный интервал z, он должен быть задан в форме списка, например `zrange=[-2, 3]`.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(yrange = [-3,3],
                   zrange = [-2,5],
                   explicit(x^2+y^2,x,-1,1,y,-1,1),
                   xrange = [-3,3])$

  См. `xrange` и `yrange`.

  Категории:Пакет draw ·

Графическая опция: logx

  Значение по умолчанию: `false`

  Если `logx` равно `true`, то ось x будет изображаться в логарифмической шкале.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(log(x),x,0.01,5),
                   logx = true)$

  См. `logy` и `logz`.

  Категории:Пакет draw ·

Графическая опция: logy

  Значение по умолчанию: `false`

  Если `logy` равно `true`, то ось y будет изображаться в логарифмической шкале.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(logy = true,
                   explicit(exp(x),x,0,5))$

  См. `logx` и `logz`.

  Категории:Пакет draw ·

Графическая опция: logz

  Значение по умолчанию: `false`

  Если `logz` равно `true`, то ось z будет изображаться в логарифмической шкале.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(logz = true,
                   explicit(exp(u^2+v^2),u,-2,2,v,-2,2))$

  См. `logx` и `logy`.

  Категории:Пакет draw ·

Графическая опция: terminal

  Значение по умолчанию: `screen`

  Выбирает терминал, используемый программой Gnuplot. Возможные значения: `screen` (умолчание), `png`, `jpg`, `eps`, `eps_color`, `gif`, `animated_gif` и `wxt`.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Примеры:

      (%i1) load("draw")$
      (%i2) /* screen terminal (default) */
            draw2d(explicit(x^2,x,-1,1))$
      (%i3) /* png file */
            draw2d(terminal  = 'png,
                   pic_width = 300,
                   explicit(x^2,x,-1,1))$
      (%i4) /* jpg file */
            draw2d(terminal   = 'jpg,
                   pic_width  = 300,
                   pic_height = 300,
                   explicit(x^2,x,-1,1))$
      (%i5) /* eps file */
            draw2d(file_name = "myfile",
                   explicit(x^2,x,-1,1),
                   terminal  = 'eps)$
      (%i6) /* wxwidgets window */
            draw2d(explicit(x^2,x,-1,1),
                   terminal  = 'wxt)$

  Файл анимированного gif:

      (%i1) load("draw")$
      (%i2) draw(
              delay     = 100,
              file_name = "zzz",
              terminal  = 'animated_gif,
              gr2d(explicit(x^2,x,-1,1)),
              gr2d(explicit(x^3,x,-1,1)),
              gr2d(explicit(x^4,x,-1,1)));
      End of animation sequence
      (%o2)          [gr2d(explicit), gr2d(explicit), gr2d(explicit)]

  Опция `delay` возможна тоько для анимированного gif. В других случаях она игнорируется.

  См. `file_name`, `pic_width`, `pic_height` и `delay`.

  Категории:Пакет draw ·

Графическая опция: grid

  Значение по умолчанию: `false`

  Если `grid` равно `true`, то на плоскости xy будет изображена сетка.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(grid = true,
                   explicit(exp(u),u,-2,2))$

  Категории:Пакет draw ·

Графическая опция: title

  Значение по умолчанию: `""` (пустая строка)

  Опция `title` – строка, содержащая основной заголовок сцены. По умолчанию заголовок отсутствует.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(exp(u),u,-2,2),
                   title = "Exponential function")$

  Категории:Пакет draw ·

Графическая опция: xlabel

  Значение по умолчанию: `""` (пустая строка)

  Опция `xlabel` – строка, содержащая метку для оси x. По умолчанию метка отсутствует.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xlabel = "Time",
                   explicit(exp(u),u,-2,2),
                   ylabel = "Population")$

  См. `ylabel` и `zlabel`.

  Категории:Пакет draw ·

Графическая опция: ylabel

  Значение по умолчанию: `""` (пустая строка)

  Опция `ylabel` – строка, содержащая метку для оси y. По умолчанию метка отсутствует.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xlabel = "Time",
                   ylabel = "Population",
                   explicit(exp(u),u,-2,2) )$

  См. `xlabel` и `zlabel`.

  Категории:Пакет draw ·

Графическая опция: zlabel

  Значение по умолчанию: `""` (пустая строка)

  Опция `zlabel` – строка, содержащая метку для оси z. По умолчанию метка отсутствует.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(zlabel = "Z variable",
                   ylabel = "Y variable",
                   explicit(sin(x^2+y^2),x,-2,2,y,-2,2),
                   xlabel = "X variable" )$

  См. `xlabel` и `ylabel`.

  Категории:Пакет draw ·

Графическая опция: xtics

  Значение по умолчанию: `auto`

  Управляет методом изображения делений на оси x.

  - Если `xtics` равно auto, то деления изображаются автоматически.
  - Если `xtics` равно none, то деления не изображаются.
  - Если `xtics` равно положительному числу, то это задает расстояние между соседними делениями.
  - Если `xtics` равно списку длины три вида `[start,incr,end]`, то деления изображаются от отметки `start` до `end` с интервалом `incr`.
  - Если `xtics` равно набору чисел `{n1, n2, ...}`, то деления изображаются для значений `n1`, `n2`, ...
  - Если `xtics` равно набору пар чисел вида `{["label1", n1], ["label2", n2], ...}`, то деления со значением `n1`, `n2`, ... обозначаются метками `"label1"`, `"label2"`, ... соответственно.

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

  Примеры:

  Деления отключены.

      (%i1) load("draw")$
      (%i2) draw2d(xtics = 'none,
                   explicit(x^3,x,-1,1)  )$

  Деления на каждой 1/4.

      (%i1) load("draw")$
      (%i2) draw2d(xtics = 1/4,
                   explicit(x^3,x,-1,1)  )$

  Деления на значениях от -3/4 до 3/4 с шагом 1/8.

      (%i1) load("draw")$
      (%i2) draw2d(xtics = [-3/4,1/8,3/4],
                   explicit(x^3,x,-1,1)  )$

  Деления в точках -1/2, -1/4 и 3/4.

      (%i1) load("draw")$
      (%i2) draw2d(xtics = {-1/2,-1/4,3/4},
                   explicit(x^3,x,-1,1)  )$

  Деления с метками.

      (%i1) load("draw")$
      (%i2) draw2d(xtics = {["High",0.75],["Medium",0],["Low",-0.75]},
                   explicit(x^3,x,-1,1)  )$

  См. `ytics` и `ztics`.

  Категории:Пакет draw ·

Графическая опция: ytics

  Значение по умолчанию: `auto`

  Управляет методом изображения делений на оси y.

  См. `xtics` для полного описания.

  Категории:Пакет draw ·

Графическая опция: ztics

  Значение по умолчанию: `auto`

  Управляет методом изображения делений на оси z.

  См. `xtics` для полного описания.

  Категории:Пакет draw ·

Графическая опция: xtics_rotate

  Значение по умолчанию: `false`

  Если `xtics_rotate` равно `true`, то деления на оси x поворачиваются на 90 градусов.

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

  Категории:Пакет draw ·

Графическая опция: ytics_rotate

  Значение по умолчанию: `false`

  Если `ytics_rotate` равно `true`, то деления на оси y поворачиваются на 90 градусов.

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

  Категории:Пакет draw ·

Графическая опция: ztics_rotate

  Значение по умолчанию: `false`

  Если `ztics_rotate` равно `true`, то деления на оси z поворачиваются на 90 градусов.

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

  Категории:Пакет draw ·

Графическая опция: xtics_axis

  Значение по умолчанию: `false`

  Если `xtics_axis` равно `true`, то деления и их метки изображаются вдоль оси x, если `false`, то деления изображаются на границе.

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

  Категории:Пакет draw ·

Графическая опция: ytics_axis

  Значение по умолчанию: `false`

  Если `ytics_axis` равно `true`, то деления и их метки изображаются вдоль оси y, если `false`, то деления изображаются на границе.

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

  Категории:Пакет draw ·

Графическая опция: ztics_axis

  Значение по умолчанию: `false`

  Если `ztics_axis` равно `true`, то деления и их метки изображаются вдоль оси z, если `false`, то деления изображаются на границе.

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

  Категории:Пакет draw ·

Графическая опция: xaxis

  Значение по умолчанию: `false`

  Если `xaxis` равно `true`, то ось x изображается.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   xaxis       = true,
                   xaxis_color = blue)$

  См. `xaxis_width`, `xaxis_type` и `xaxis_color`.

  Категории:Пакет draw ·

Графическая опция: xaxis_width

  Значение по умолчанию: 1

  `xaxis_width` – толщина оси x. Значение должно быть положительным числом.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   xaxis       = true,
                   xaxis_width = 3)$

  См. `xaxis`, `xaxis_type` и `xaxis_color`.

  Категории:Пакет draw ·

Графическая опция: xaxis_type

  Значение по умолчанию: `dots`

  `xaxis_type` – задает стиль изображения оси x. Возможные значения: `solid` и `dots`.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   xaxis       = true,
                   xaxis_type  = solid)$

  См. `xaxis`, `xaxis_width` и `xaxis_color`.

  Категории:Пакет draw ·

Графическая опция: xaxis_color

  Значение по умолчанию: `"black"`

  `xaxis_color` – определяет цвет оси x axis. См. `color` для способа задания цвета.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   xaxis       = true,
                   xaxis_color = red)$

  См. `xaxis`, `xaxis_width` и `xaxis_type`.

  Категории:Пакет draw ·

Графическая опция: yaxis

  Значение по умолчанию: `false`

  Если `yaxis` равно `true`, то ось y изображается.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   yaxis       = true,
                   yaxis_color = blue)$

  См. `yaxis_width`, `yaxis_type` и `yaxis_color`.

  Категории:Пакет draw ·

Графическая опция: yaxis_width

  Значение по умолчанию: 1

  `yaxis_width` – толщина оси y. Значение должно быть положительным числом.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   yaxis       = true,
                   yaxis_width = 3)$

  См. `yaxis`, `yaxis_type` и `yaxis_color`.

  Категории:Пакет draw ·

Графическая опция: yaxis_type

  Значение по умолчанию: `dots`

  `yaxis_type` – задает стиль изображения y. Возможные значения: `solid` и `dots`.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   yaxis       = true,
                   yaxis_type  = solid)$

  См. `yaxis`, `yaxis_width` и `yaxis_color`.

  Категории:Пакет draw ·

Графическая опция: yaxis_color

  Значение по умолчанию: `"black"`

  `yaxis_color` – определяет цвет оси y axis. См. `color` для способа задания цвета.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^3,x,-1,1),
                   yaxis       = true,
                   yaxis_color = red)$

  См. `yaxis`, `yaxis_width` и `yaxis_type`.

  Категории:Пакет draw ·

Графическая опция: zaxis

  Значение по умолчанию: `false`

  Если `zaxis` равно `true`, то ось x изображается на трехмерных графиках. Эта опция не влияет на двумерные графики.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(x^2+y^2,x,-1,1,y,-1,1),
                   zaxis       = true,
                   zaxis_type  = solid,
                   zaxis_color = blue)$

  См. `zaxis_width`, `zaxis_type` и `zaxis_color`.

  Категории:Пакет draw ·

Графическая опция: zaxis_width

  Значение по умолчанию: 1

  `zaxis_width` – толщина оси z. Значение должно быть положительным числом. Эта опция не влияет на двумерные графики.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(x^2+y^2,x,-1,1,y,-1,1),
                   zaxis       = true,
                   zaxis_type  = solid,
                   zaxis_width = 3)$

  См. `zaxis`, `zaxis_type` и `zaxis_color`.

  Категории:Пакет draw ·

Графическая опция: zaxis_type

  Значение по умолчанию: `dots`

  `zaxis_type` – задает стиль изображения оси z. Возможные значения: `solid` и `dots`. Эта опция не влияет на двумерные графики.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(x^2+y^2,x,-1,1,y,-1,1),
                   zaxis       = true,
                   zaxis_type  = solid)$

  См. `zaxis`, `zaxis_width` и `zaxis_color`.

  Категории:Пакет draw ·

Графическая опция: zaxis_color

  Значение по умолчанию: `"black"`

  `zaxis_color` – определяет цвет оси z axis. См. `color` для способа задания цвета. Эта опция не влияет на двумерные графики.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(x^2+y^2,x,-1,1,y,-1,1),
                   zaxis       = true,
                   zaxis_type  = solid,
                   zaxis_color = red)$

  См. `zaxis`, `zaxis_width` и `zaxis_type`.

  Категории:Пакет draw ·

Графическая опция: rot_vertical

  Значение по умолчанию: 60

  `rot_vertical` – угол поворота (в градусах) вокруг оси x точки наблюдения в трехмерных сценах.

  Угол может быть в интервале [0, 180].

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(rot_vertical = 170,
                   explicit(sin(x^2+y^2),x,-2,2,y,-2,2) )$

  См. `rot_horizontal`.

  Категории:Пакет draw ·

Графическая опция: rot_horizontal

  Значение по умолчанию: 30

  `rot_horizontal` – угол поворота (в градусах) вокруг оси z точки наблюдения в трехмерных сценах.

  Угол может быть в интервале [0, 360].

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(rot_vertical = 170,
                   rot_horizontal = 360,
                   explicit(sin(x^2+y^2),x,-2,2,y,-2,2) )$

  См. `rot_vertical`.

  Категории:Пакет draw ·

Графическая опция: xy_file

  Значение по умолчанию: `""` (пустая строка)

  `xy_file` – имя файла, в котором будут сохранены координаты после щелчка мышкой и нажатия клавиши ’x’. По умолчанию координаты не сохраняются.

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

  Категории:Пакет draw ·

Графическая опция: user_preamble

  Значение по умолчанию: `""` (пустая строка)

  Опытные пользователи Gnuplot могут использовать эту опцию для тонкой настройке поведения Gnuplot путем задания установок до комманд `plot` или `splot`.

  Значение этой опции должно быть строкой или списком строк (по одной на строку).

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

  Пример:

  Терминал dumb не поддерживается пакетом `draw`, но можно задать его при помощи опции `user_preamble`,

      (%i1) load("draw")$
      (%i2) draw2d(explicit(exp(x)-1,x,-1,1),
                   parametric(cos(u),sin(u),u,0,2*%pi),
                   user_preamble="set terminal dumb")$

  Категории:Пакет draw ·

Графическая опция: file_name

  Значение по умолчанию: `"maxima_out"`

  Это имя файла, в котром терминалы `png`, `jpg`, `eps` и `eps_color` сохраняют графику.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(file_name = "myfile",
                   explicit(x^2,x,-1,1),
                   terminal  = 'png)$

  См. `terminal`, `pic_width` и `pic_height`.

  Категории:Пакет draw ·

Графическая опция: delay

  Значение по умолчанию: 5

  Это задержка в 1/100 секунды между кадрами анимированного gif.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw(
              delay     = 100,
              file_name = "zzz",
              terminal  = 'animated_gif,
              gr2d(explicit(x^2,x,-1,1)),
              gr2d(explicit(x^3,x,-1,1)),
              gr2d(explicit(x^4,x,-1,1)));
      End of animation sequence
      (%o2)          [gr2d(explicit), gr2d(explicit), gr2d(explicit)]

  Опция `delay` применима только для анимированного gif. Для других случаев она игнорируется.

  См. `terminal`, `pic_width` и `pic_height`.

  Категории:Пакет draw ·

Графическая опция: pic_width

  Значение по умолчанию: 640

  Это ширина изображения, создаваемого терминалами `png` и `jpg`.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(terminal   = 'png,
                   pic_width  = 300,
                   pic_height = 300,
                   explicit(x^2,x,-1,1))$

  См. `terminal`, `file_name` и `pic_height`.

  Категории:Пакет draw ·

Графическая опция: pic_height

  Значение по умолчанию: 640

  Это высота изображения, создаваемого терминалами `png` и `jpg`.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(terminal   = 'png,
                   pic_width  = 300,
                   pic_height = 300,
                   explicit(x^2,x,-1,1))$

  См. `terminal`, `file_name` и `pic_width`.

  Категории:Пакет draw ·

Графическая опция: eps_width

  Значение по умолчанию: 12

  Это ширина изображения Postscript (в сантиметрах), создаваемого терминалами `eps` и `eps_color`.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(terminal   = 'eps,
                   eps_width  = 3,
                   eps_height = 3,
                   explicit(x^2,x,-1,1))$

  См. `terminal`, `file_name` и `eps_height`.

  Категории:Пакет draw ·

Графическая опция: eps_height

  Значение по умолчанию: 8

  Это высота изображения Postscript (в сантиметрах), создаваемого терминалами `eps` и `eps_color`.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(terminal   = 'eps,
                   eps_width  = 3,
                   eps_height = 3,
                   explicit(x^2,x,-1,1))$

  См. `terminal`, `file_name` и `eps_width`.

  Категории:Пакет draw ·

Графическая опция: axis_bottom

  Значение по умолчанию: `true`

  Если `axis_bottom` равно `true`, то на двумерных сценах изображается нижняя ось.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(axis_bottom = false,
                   explicit(x^3,x,-1,1))$

  См. `axis_left`, `axis_top`, `axis_right` и `axis_3d`.

  Категории:Пакет draw ·

Графическая опция: axis_left

  Значение по умолчанию: `true`

  Если `axis_left` равно `true`, то на двумерных сценах изображается левая ось.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(axis_left = false,
                   explicit(x^3,x,-1,1))$

  См. `axis_bottom`, `axis_top`, `axis_right` и `axis_3d`.

  Категории:Пакет draw ·

Графическая опция: axis_top

  Значение по умолчанию: `true`

  Если `axis_top` равно `true`, то на двумерных сценах отображается верхняя ось.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(axis_top = false,
                   explicit(x^3,x,-1,1))$

  См. `axis_bottom`, `axis_left`, `axis_right` и `axis_3d`.

  Категории:Пакет draw ·

Графическая опция: axis_right

  Значение по умолчанию: `true`

  Если `axis_right` равно `true`, то на двумерных сценах отображается правая ось.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(axis_right = false,
                   explicit(x^3,x,-1,1))$

  См. `axis_bottom`, `axis_left`, `axis_top` и `axis_3d`.

  Категории:Пакет draw ·

Графическая опция: axis_3d

  Значение по умолчанию: `true`

  Если `axis_3d` равно `true`, то оси x, y и z изображаются на трехмерных сценах.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(axis_3d = false,
                   explicit(sin(x^2+y^2),x,-2,2,y,-2,2) )$

  См. `axis_bottom`, `axis_left`, `axis_top` и `axis_right` для двух измерений.

  Категории:Пакет draw ·

Графическая опция: palette

  Значение по умолчанию: `color`

  `palette` определяет, как отобразить реальные значения матрицы, передаваемые в объект `image`, в компоненты цвета.

  `palette` – вектор тремя компонентами со значеним в пределах от -36 до +36. Каждое значение является индексом для формулы, отображающей уровни в красный, зеленый и синий цвета соответственно:

       0: 0               1: 0.5           2: 1
       3: x               4: x^2           5: x^3
       6: x^4             7: sqrt(x)       8: sqrt(sqrt(x))
       9: sin(90x)       10: cos(90x)     11: |x-0.5|
      12: (2x-1)^2       13: sin(180x)    14: |cos(180x)|
      15: sin(360x)      16: cos(360x)    17: |sin(360x)|
      18: |cos(360x)|    19: |sin(720x)|  20: |cos(720x)|
      21: 3x             22: 3x-1         23: 3x-2
      24: |3x-1|         25: |3x-2|       26: (3x-1)/2
      27: (3x-2)/2       28: |(3x-1)/2|   29: |(3x-2)/2|
      30: x/0.32-0.78125 31: 2*x-0.84     32: 4x;1;-2x+1.84;x/0.08-11.5
      33: |2*x - 0.5|    34: 2*x          35: 2*x - 0.5
      36: 2*x - 1

  Отрицательные числа означают отрицательные цветовые компоненты.

  `palette = gray` и `palette = color` являются сокращениями для `palette = [3,3,3]` и `palette = [7,5,15]` соответственно.

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

  Примеры:

      (%i1) load("draw")$
      (%i2) im: apply(
                 'matrix,
                  makelist(makelist(random(200),i,1,30),i,1,30))$
      (%i3) /* palette = color, default */
            draw2d(image(im,0,0,30,30))$
      (%i4) draw2d(palette = gray, image(im,0,0,30,30))$
      (%i5) draw2d(palette = [15,20,-4],
                   colorbox=false,
                   image(im,0,0,30,30))$

  См. `colorbox`.

  Категории:Пакет draw ·

Графическая опция: colorbox

  Значение по умолчанию: `true`

  Если `colorbox` равно `true`, то палитра цветов изображается вместе с объектами изображения `image`.

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

  Пример:

      (%i1) load("draw")$
      (%i2) im: apply('matrix,
                       makelist(makelist(random(200),i,1,30),i,1,30))$
      (%i3) draw2d(image(im,0,0,30,30))$
      (%i4) draw2d(colorbox=false, image(im,0,0,30,30))$

  См. `palette`.

  Категории:Пакет draw ·

Графическая опция: enhanced3d

  Значение по умолчанию: `false`

  Если `enhanced3d` равно `true`, то поверхности в трехмерных графиках окрашиваются, другими словами, включается Gnuplot мода pm3d.

  См. `palette` для того, чтобы узнать как задается палитра.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(surface_hide = true,
                   enhanced3d   = true,
                   palette      = gray,
                   explicit(20*exp(-x^2-y^2)-10,x,-3,3,y,-3,3))$

  Категории:Пакет draw ·

Графическая опция: point_size

  Значение по умолчанию: 1

  `point_size` – устанавливает размер изображаемых точек. Значение должно быть неотрицательным числом.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `points`.
  - `gr3d`: `points`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(points(makelist([random(20),random(50)],k,1,10)),
              point_size = 5,
              points(makelist(k,k,1,20),makelist(random(30),k,1,20)))$

  Категории:Пакет draw ·

Графическая опция: point_type

  Значение по умолчанию: 1

  `point_type` определяет то, как изображаются изолированные точки. Значение этой опции может быть целое число больше или равное -1, или имя стиля точки: `$none` (-1), `dot` (0), `plus` (1), `multiply` (2), `asterisk` (3), `square` (4), `filled_square` (5), `circle` (6), `filled_circle` (7), `up_triangle` (8), `filled_up_triangle` (9), `down_triangle` (10), `filled_down_triangle` (11), `diamant` (12) и `filled_diamant` (13).

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `points`.
  - `gr3d`: `points`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange = [0,10],
                   yrange = [0,10],
                   point_size = 3,
                   point_type = diamant,
                   points([[1,1],[5,1],[9,1]]),
                   point_type = filled_down_triangle,
                   points([[1,2],[5,2],[9,2]]),
                   point_type = asterisk,
                   points([[1,3],[5,3],[9,3]]),
                   point_type = filled_diamant,
                   points([[1,4],[5,4],[9,4]]),
                   point_type = 5,
                   points([[1,5],[5,5],[9,5]]),
                   point_type = 6,
                   points([[1,6],[5,6],[9,6]]),
                   point_type = filled_circle,
                   points([[1,7],[5,7],[9,7]]),
                   point_type = 8,
                   points([[1,8],[5,8],[9,8]]),
                   point_type = filled_diamant,
                   points([[1,9],[5,9],[9,9]]) )$

  Категории:Пакет draw ·

Графическая опция: points_joined

  Значение по умолчанию: `false`

  Если `points_joined` равно `true`, то точки соединяются линиями.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `points`.
  - `gr3d`: `points`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange        = [0,10],
                   yrange        = [0,4],
                   point_size    = 3,
                   point_type    = up_triangle,
                   color         = blue,
                   points([[1,1],[5,1],[9,1]]),
                   points_joined = true,
                   point_type    = square,
                   line_type     = dots,
                   points([[1,2],[5,2],[9,2]]),
                   point_type    = circle,
                   color         = red,
                   line_width    = 7,
                   points([[1,3],[5,3],[9,3]]) )$

  Категории:Пакет draw ·

Графическая опция: filled_func

  Значение по умолчанию: `false`

  Опция `filled_func` управляет то, как заполняются области, ограниченные функциями. Если `filled_func` равно `true`, то область, ограниченная функцией, определенной объектом `explicit` и низом графического окна, заполняется цветом `fill_color`. Если `filled_func` содержит функциональное выражение, то будет заполнена область, ограниченная этой функцией и функцией, определенной объектом `explicit`. По умолчанию явные функции не заполняются.

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

  Пример:

  Область, ограниченная объектом `explicit` и низом графического окна.

      (%i1) load("draw")$
      (%i2) draw2d(fill_color  = red,
                   filled_func = true,
                   explicit(sin(x),x,0,10) )$

  Область, ограниченная объектом `explicit` и функцией, определенной в `filled_func`. Отметим, что переменная в `filled_func` должна быть той же, что и в `explicit`.

      (%i1) load("draw")$
      (%i2) draw2d(fill_color  = grey,
                   filled_func = sin(x),
                   explicit(-sin(x),x,0,%pi));

  См. `fill_color` и `explicit`.

  Категории:Пакет draw ·

Графическая опция: transparent

  Значение по умолчанию: `false`

  Если `transparent` равно `true`, то внутренняя область многоугольников заполняется в соответствии с `fill_color`.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `polygon`, `rectangle` и `ellipse`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(polygon([[3,2],[7,2],[5,5]]),
                   transparent = true,
                   color       = blue,
                   polygon([[5,2],[9,2],[7,5]]) )$

  Категории:Пакет draw ·

Графическая опция: border

  Значение по умолчанию: `true`

  Если `border` равно `true`, то границы многоугольников изображаются в соответствии с опциями `line_type` и `line_width`.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `polygon`, `rectangle` и `ellipse`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(color       = brown,
                   line_width  = 8,
                   polygon([[3,2],[7,2],[5,5]]),
                   border      = false,
                   fill_color  = blue,
                   polygon([[5,2],[9,2],[7,5]]) )$

  Категории:Пакет draw ·

Графическая опция: head_both

  Значение по умолчанию: `false`

  Если `head_both` равно `true`, то векторы изображаются со окончаниями в форме двух стрелок. Если `false`, то изображается только одна стрелка.

  Эта опция влияет только на объекты типа `vector`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange      = [0,8],
                   yrange      = [0,8],
                   head_length = 0.7,
                   vector([1,1],[6,0]),
                   head_both   = true,
                   vector([1,7],[6,0]) )$

  См. `head_length`, `head_angle` и `head_type`.

  Категории:Пакет draw ·

Графическая опция: head_length

  Значение по умолчанию: 2

  `head_length` задает длину наконечника стрелок в единицах оси x.

  Эта опция влияет только на объекты типа `vector`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange      = [0,12],
                   yrange      = [0,8],
                   vector([0,1],[5,5]),
                   head_length = 1,
                   vector([2,1],[5,5]),
                   head_length = 0.5,
                   vector([4,1],[5,5]),
                   head_length = 0.25,
                   vector([6,1],[5,5]))$

  См. `head_both`, `head_angle` и `head_type`.

  Категории:Пакет draw ·

Графическая опция: head_angle

  Значение по умолчанию: 45

  `head_angle` задает угол в градусах между стронами наконечника стрелки и ее осью.

  Эта опция влияет только на объекты типа `vector`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange      = [0,10],
                   yrange      = [0,9],
                   head_length = 0.7,
                   head_angle  = 10,
                   vector([1,1],[0,6]),
                   head_angle  = 20,
                   vector([2,1],[0,6]),
                   head_angle  = 30,
                   vector([3,1],[0,6]),
                   head_angle  = 40,
                   vector([4,1],[0,6]),
                   head_angle  = 60,
                   vector([5,1],[0,6]),
                   head_angle  = 90,
                   vector([6,1],[0,6]),
                   head_angle  = 120,
                   vector([7,1],[0,6]),
                   head_angle  = 160,
                   vector([8,1],[0,6]),
                   head_angle  = 180,
                   vector([9,1],[0,6]) )$

  См. `head_both`, `head_length` и `head_type`.

  Категории:Пакет draw ·

Графическая опция: head_type

  Значение по умолчанию: `filled`

  `head_type` задает способ изображения наконечника стрелок. Возможны значения: `filled` (замкнутые и заполненные наконечники), `empty` (замкнутые и пустые наконечники) и `nofilled` (открытые наконечники).

  Эта опция влияет только на объекты типа `vector`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange      = [0,12],
                   yrange      = [0,10],
                   head_length = 1,
                   vector([0,1],[5,5]), /* default type */
                   head_type = 'empty,
                   vector([3,1],[5,5]),
                   head_type = 'nofilled,
                   vector([6,1],[5,5]))$

  См. `head_both`, `head_angle` и `head_length`.

  Категории:Пакет draw ·

Графическая опция: unit_vectors

  Значение по умолчанию: `false`

  Если `unit_vectors` равно `true`, все вектора изображаются с единичной длиной. Это полезно при изображении векторных полей. Если `unit_vectors` равно `false`, то вектора изображаются с их настоящей длиной.

  Эта опция влияет только на объекты типа `vector`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange      = [-1,6],
                   yrange      = [-1,6],
                   head_length = 0.1,
                   vector([0,0],[5,2]),
                   unit_vectors = true,
                   color        = red,
                   vector([0,3],[5,2]))$

  Категории:Пакет draw ·

Графическая опция: label_alignment

  Значение по умолчанию: `center`

  `label_alignment` определяет положение меток, по отношению к заданным координатам. Возможны значения: `center`, `left` и `right`.

  Эта опция влияет только на объекты типа `label`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange          = [0,10],
                   yrange          = [0,10],
                   points_joined   = true,
                   points([[5,0],[5,10]]),
                   color           = blue,
                   label(["Centered alignment (default)",5,2]),
                   label_alignment = 'left,
                   label(["Left alignment",5,5]),
                   label_alignment = 'right,
                   label(["Right alignment",5,8]))$

  См. `label_orientation` и `color`.

  Категории:Пакет draw ·

Графическая опция: label_orientation

  Значение по умолчанию: `horizontal`

  `label_orientation` определяет ориентацию меток. Возможны значения: `horizontal` и `vertical`.

  Эта опция влияет только на объекты типа `label`.

  Пример:

  В этом примере к изображению добавлена фиктивная точка. Пакет `draw` требует непустые данные, чтобы изобразить сцену.

      (%i1) load("draw")$
      (%i2) draw2d(xrange     = [0,10],
                   yrange     = [0,10],
                   point_size = 0,
                   points([[5,5]]),
                   color      = navy,
                   label(["Horizontal orientation (default)",5,2]),
                   label_orientation = 'vertical,
                   color             = "#654321",
                   label(["Vertical orientation",1,5]))$

  См. `label_alignment` и `color`.

  Категории:Пакет draw ·

Графическая опция: color

  Значение по умолчанию: `"black"`

  `color` задает цвет линий, точек, границ многоугольников и меток.

  Цвет может быть задан как наименование или как шестнадцатиричный rgb код.

  Доступны следующие наименования цветов: `"white"`, `"black"`, `"gray0"`, `"grey0"`, `"gray10"`, `"grey10"`, `"gray20"`, `"grey20"`, `"gray30"`, `"grey30"`, `"gray40"`, `"grey40"`, `"gray50"`, `"grey50"`, `"gray60"`, `"grey60"`, `"gray70"`, `"grey70"`, `"gray80"`, `"grey80"`, `"gray90"`, `"grey90"`, `"gray100"`, `"grey100"`, `"gray"`, `"grey"`, `"light-gray"`, `"light-grey"`, `"dark-gray"`, `"dark-grey"`, `"red"`, `"light-red"`, `"dark-red"`, `"yellow"`, `"light-yellow"`, `"dark-yellow"`, `"green"`, `"light-green"`, `"dark-green"`, `"spring-green"`, `"forest-green"`, `"sea-green"`, `"blue"`, `"light-blue"`, `"dark-blue"`, `"midnight-blue"`, `"navy"`, `"medium-blue"`, `"royalblue"`, `"skyblue"`, `"cyan"`, `"light-cyan"`, `"dark-cyan"`, `"magenta"`, `"light-magenta"`, `"dark-magenta"`, `"turquoise"`, `"light-turquoise"`, `"dark-turquoise"`, `"pink"`, `"light-pink"`, `"dark-pink"`, `"coral"`, `"light-coral"`, `"orange-red"`, `"salmon"`, `"light-salmon"`, `"dark-salmon"`, `"aquamarine"`, `"khaki"`, `"dark-khaki"`, `"goldenrod"`, `"light-goldenrod"`, `"dark-goldenrod"`, `"gold"`, `"beige"`, `"brown"`, `"orange"`, `"dark-orange"`, `"violet"`, `"dark-violet"`, `"plum"` и `"purple"`.

  Цветовые компоненты в шестнадцатиричном коде представляются в форме `"#rrggbb"`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^2,x,-1,1), /* default is black */
                   color = "red",
                   explicit(0.5 + x^2,x,-1,1),
                   color = blue,
                   explicit(1 + x^2,x,-1,1),
                   color = "light-blue", /* double quotes if - is used */
                   explicit(1.5 + x^2,x,-1,1),
                   color = "#23ab0f",
                   label(["This is a label",0,1.2])  )$

  См. `fill_color`.

  Категории:Пакет draw ·

Графическая опция: fill_color

  Значение по умолчанию: `"red"`

  `fill_color` определяет цвет для заполнения многоугольников и двумерных `explicit` функций.

  См. `color` для способа задания цвета.

  Категории:Пакет draw ·

Графическая опция: fill_density

  Значение по умолчанию: 0

  `fill_density` – число от 0 до 1, которое задает интенсивность цвета `fill_color` в объектах `bars`.

  См. `bars` для примеров.

  Категории:Пакет draw ·

Графическая опция: line_width

  Значение по умолчанию: 1

  `line_width` – ширина изображаемых линий. Значение должно быть положительным числом.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `points`, `polygon`, `rectangle`, `ellipse`, `vector`, `explicit`, `implicit`, `parametric` и `polar`.
  - `gr3d`: `points` и `parametric`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(x^2,x,-1,1), /* default width */
                   line_width = 5.5,
                   explicit(1 + x^2,x,-1,1),
                   line_width = 10,
                   explicit(2 + x^2,x,-1,1))$

  См. `line_type`.

  Категории:Пакет draw ·

Графическая опция: line_type

  Значение по умолчанию: `solid`

  `line_type` – задает стиль изображения линий. Возможные значения: `solid` и `dots`.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `points`, `polygon`, `rectangle`, `ellipse`, `vector`, `explicit`, `implicit`, `parametric` и `polar`.
  - `gr3d`: `points`, `explicit`, `parametric` и `parametric_surface`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(line_type = dots,
                   explicit(1 + x^2,x,-1,1),
                   line_type = solid, /* default */
                   explicit(2 + x^2,x,-1,1))$

  См. `line_width`.

  Категории:Пакет draw ·

Графическая опция: nticks

  Значение по умолчанию: 30

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

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `ellipse`, `explicit`, `parametric` и `polar`.
  - `gr3d`: `parametric`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(transparent = true,
                   ellipse(0,0,4,2,0,180),
                   nticks = 5,
                   ellipse(0,0,4,2,180,180) )$

  Категории:Пакет draw ·

Графическая опция: adapt_depth

  Значение по умолчанию: 10

  `adapt_depth` – максимальное число разбиений, используемое в адаптивных графиках.

  Эта опция влияет только на двумерные `explicit` функции.

  Категории:Пакет draw ·

Графическая опция: key

  Значение по умолчанию: `""` (пустая строка)

  `key` – наименование функции в легенде. Если `key` – пустая строка, то ничего не изображается.

  Эта опция влияет на следующие графические объекты:

  - `gr2d`: `points`, `polygon`, `rectangle`, `ellipse`, `vector`, `explicit`, `implicit`, `parametric` и `polar`.
  - `gr3d`: `points`, `explicit`, `parametric` и `parametric_surface`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(key   = "Sinus",
                   explicit(sin(x),x,0,10),
                   key   = "Cosinus",
                   color = red,
                   explicit(cos(x),x,0,10) )$

  Категории:Пакет draw ·

Графическая опция: xu_grid

  Значение по умолчанию: 30

  `xu_grid` – число координат первой переменной (`x` в явной и `u` в параметрической трехмерной поверхности) для построения сетки пробных точек.

  Эта опция влияет на следующие графические объекты:

  - `gr3d`: `explicit` и `parametric_surface`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(xu_grid = 10,
                   yv_grid = 50,
                   explicit(x^2+y^2,x,-3,3,y,-3,3) )$

  См. `yv_grid`.

  Категории:Пакет draw ·

Графическая опция: yv_grid

  Значение по умолчанию: 30

  `yv_grid` – число координат второй переменной (`y` в явной и `v` в параметрической трехмерной поверхности) для построения сетки пробных точек.

  Эта опция влияет на следующие графические объекты:

  - `gr3d`: `explicit` и `parametric_surface`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(xu_grid = 10,
                   yv_grid = 50,
                   explicit(x^2+y^2,x,-3,3,y,-3,3) )$

  См. `xu_grid`.

  Категории:Пакет draw ·

Графическая опция: surface_hide

  Значение по умолчанию: `false`

  Если `surface_hide` равно `true`, то скрытые части на трехмерных поверхностях не изображаются.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw(columns=2,
                 gr3d(explicit(exp(sin(x)+cos(x^2)),x,-3,3,y,-3,3)),
                 gr3d(surface_hide = true,
                      explicit(exp(sin(x)+cos(x^2)),x,-3,3,y,-3,3)) )$

  Категории:Пакет draw ·

Графическая опция: contour

  Значение по умолчанию: `none`

  Опция `contour` позволяет пользователю выбрать, где изображать контурные линии. Доступны следующие значения:

  - `none`: нет контурных линий.
  - `base`: контурные линии изображаются на xy плоскости.
  - `surface`: контурные линии изображаются на поверхности.
  - `both`: две контурные линии – на поверхности и на плоскости xy.
  - `map`: контурные линии проецируются на плоскость xy, а точка наблюдения расположена вертикально над этой плоскостью.

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

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(20*exp(-x^2-y^2)-10,x,0,2,y,-3,3),
                   contour_levels = 15,
                   contour        = both,
                   surface_hide   = true) $

  Категории:Пакет draw ·

Графическая опция: contour_levels

  Значение по умолчанию: 5

  Эта опция управляет способом изображения контуров. `contour_levels` может иметь значение в виде положительного целого числа, списка трех чисел или произвольного набора чисел:

  - Если `contour_levels` равно положительному целому числу n, то будет изображено n контурных линий через равный интервал. По умолчанию изображается пять равноудаленных контурных линий.
  - Если `contour_levels` равно списку трех чисел `[lowest,s,highest]`, то контурные линии изображаются с `lowest` по `highest` с шагом `s`.
  - Если `contour_levels` равно набору чисел `{n1, n2, ...}`, то контурные линии изображаются для значений `n1`, `n2`, ...

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

  Примеры:

  Контурные линии, расположенные на равном расстоянии. Число уровней можно настраивать.

      (%i1) load("draw")$
      (%i2) draw3d(color = green,
                   explicit(20*exp(-x^2-y^2)-10,x,0,2,y,-3,3),
                   contour_levels = 10,
                   contour        = both,
                   surface_hide   = true) $

  Контурные линии от -8 до 8 с шагом 4.

      (%i1) load("draw")$
      (%i2) draw3d(color = green,
                   explicit(20*exp(-x^2-y^2)-10,x,0,2,y,-3,3),
                   contour_levels = [-8,4,8],
                   contour        = both,
                   surface_hide   = true) $

  Контурные линии на уровне -7, -6, 0.8 и 5.

      (%i1) load("draw")$
      (%i2) draw3d(color = green,
                   explicit(20*exp(-x^2-y^2)-10,x,0,2,y,-3,3),
                   contour_levels = {-7, -6, 0.8, 5},
                   contour        = both,
                   surface_hide   = true) $

  См. `contour`.

  Категории:Пакет draw ·

Графическая опция: columns

  Значение по умолчанию: 1

  `columns` число колонок в множественных графиках.

  Поскольку это глобальная графическая опция, ее расположение в описании сцены не имеет значения. Она также может использоваться как аргумент функции `draw`.

  Пример:

      (%i1) load("draw")$
      (%i2) scene1: gr2d(title="Ellipse",
                         nticks=30,
                         parametric(2*cos(t),5*sin(t),t,0,2*%pi))$
      (%i3) scene2: gr2d(title="Triangle",
                         polygon([4,5,7],[6,4,2]))$
      (%i4) draw(scene1, scene2, columns = 2)$

  Категории:Пакет draw ·

Графическая опция: ip_grid

  Значение по умолчанию: `[50, 50]`

  `ip_grid` задает решетку для первой пробной выборки для неявных графиков.

  Эта опция влияет только на объекты типа `implicit`.

  Категории:Пакет draw ·

Графическая опция: ip_grid_in

  Значение по умолчанию: `[5, 5]`

  `ip_grid_in` задает решетку для второй пробной выборки для неявных графиков.

  Эта опция влияет только на объекты типа `implicit`.

  Категории:Пакет draw ·

Графическая опция: x_voxel

  Значение по умолчанию: 10

  `x_voxel` есть число вокселей в направлении x, используемых в алгоритме марширующих кубов, реализованном лоя трехмерных `implicit` объектов.

  Категории:Пакет draw ·

Графическая опция: y_voxel

  Значение по умолчанию: 10

  `y_voxel` есть число вокселей в направлении y, используемых в алгоритме марширующих кубов, реализованном лоя трехмерных `implicit` объектов.

  Категории:Пакет draw ·

Графическая опция: z_voxel

  Значение по умолчанию: 10

  `z_voxel` есть число вокселей в направлении z, используемых в алгоритме марширующих кубов, реализованном лоя трехмерных `implicit` объектов.

  Категории:Пакет draw ·

Конструктор сцены: gr2d (графическая опция, ..., графический объект, ...)

  Функция `gr2d` строит объект, который описывает двумерную сцену. Аргументы есть графические опции и графические объекты. Эта сцена интерпретируется последовательно: графические опции влияет на графические объекты, расположенные справа от них. Некоторые графические опции глобально влияют на вид сцены.

  Это список графических объектов, доступных для сцены в двух измерениях: `points`, `polygon`, `rectangle`, `bars`, `ellipse`, `label`, `vector`, `explicit`, `implicit`, `polar`, `parametric`, `image` и `geomap`.

  См. следующие глобальные графические опции: `xrange`, `yrange`, `logx`, `logy`, `terminal`, `grid`, `title`, `xlabel`, `ylabel`, `xtics`, `ytics`, `xtics_rotate`, `ytics_rotate`, `xtics_axis`, `ytics_axis`, `xaxis`, `yaxis`, `xaxis_width`, `yaxis_width`, `xaxis_type`, `yaxis_type`, `xaxis_color`, `yaxis_color`, `xy_file`, `file_name`, `pic_width`, `pic_height`, `eps_width`, `eps_height`, `user_preamble`, `axis_bottom`, `axis_left`, `axis_top` и `axis_right`.

  Для того, чтобы использовать эту функцию, ее следует загрузить командой `load("draw")`.

  Категории:Пакет draw ·

Конструктор сцены: gr3d (графическая опция, ..., графический объект, ...)

  Функция `gr3d` строит объект, который описывает трехмерную сцену. Аргументы есть графические опции и графические объекты. Эта сцена интерпретируется последовательно: графические опции влияет на графические объекты, неположенные справа от них. Некоторые графические опции глобально влияют на вид сцены.

  Это список графических объектов, доступных для сцены в трех измерениях: `points`, `label`, `vector`, `explicit`, `implicit`, `parametric`, `parametric_surface` и `geomap`.

  См. следующие графические опции: `xrange`, `yrange`, `zrange`, `logx`, `logy`, `logz`, `terminal`, `grid`, `title`, `xlabel`, `ylabel`, `zlabel`, `xtics`, `ytics`, `ztics`, `xtics_rotate`, `ytics_rotate`, `ztics_rotate`, `xtics_axis`, `ytics_axis`, `ztics_axis`, `xaxis`, `yaxis`, `zaxis`, `xaxis_width`, `yaxis_width`, `zaxis_width`, `xaxis_type`, `yaxis_type`, `zaxis_type`, `xaxis_color`, `yaxis_color`, `zaxis_color`, `xy_file`, `user_preamble`, `axis_bottom`, `axis_left`, `axis_top`, `file_name`, `pic_width`, `pic_height`, `eps_width`, `eps_height`, `axis_right`, `rot_vertical`, `rot_horizontal`, `axis_3d`, `xu_grid`, `yv_grid`, `surface_hide`, `contour`, `contour_levels`, `palette`, `colorbox` и `enhanced3d`.

  Для того, чтобы использовать эту функцию, ее следует загрузить командой `load("draw")`.

  Категории:Пакет draw ·

Графический объект: points ([[x1,y1], [x2,y2],...])
Графический объект: points ([x1,x2,...], [y1,y2,...])
Графический объект: points ([y1,y2,...])
Графический объект: points ([[x1,y1,z1], [x2,y2,z2],...])
Графический объект: points ([x1,x2,...], [y1,y2,...], [z1,z2,...])
Графический объект: points (matrix)

  Строит точки в двух и трех измерениях.

  Следующие графические опции влияют на этот объект: `point_size`, `point_type`, `points_joined`, `line_width`, `key`, `line_type` и `color`.

  Два измерения

  `points ([[x1,y1], [x2,y2],...])` или `points ([x1,x2,...], [y1,y2,...])` строит точки с координатами `[x1,y1]`, `[x2,y2]`, и т.д. Если абсциссы не заданы, то они принимаются равными последовательным положительным числам, так что `points ([y1,y2,...])` строит точки `[1,y1]`, `[2,y2]`, и т.д. Если matrix – матрица из двух строк или столбцов, то `points (matrix)` строит соответствующие точки. Если matrix – матрица из одной строки или одного столбца, то абсциссы выбираются автоматически.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(
              key = "Small points",
              points(makelist([random(20),random(50)],k,1,10)),
              point_type    = circle,
              point_size    = 3,
              points_joined = true,
              key           = "Great points",
              points(makelist(k,k,1,20),makelist(random(30),k,1,20)),
              point_type    = filled_down_triangle,
              key           = "Automatic abscissas",
              color         = red,
              points([2,12,8]))$

  Три измерения

  `points ([[x1,y1,z1], [x2,y2,z2],...])` или `points ([x1,x2,...], [y1,y2,...], [z1,z2,...])` строит точки с координатами `[x1,y1,z1]`, `[x2,y2,z2]`, и т.д. Если matrix – матрица из трех строк или трех столбцов, то `points (matrix)` строит соответствующие точки.

  Примеры:

  Одна трехмерная выборка:

      (%i1) load("draw")$
      (%i2) load ("numericalio")$
      (%i3) s2 : read_matrix (file_search ("wind.data"))$
      (%i4) draw3d(title = "Daily average wind speeds",
                   point_size = 2,
                   points(args(submatrix (s2, 4, 5))) )$

  Две трехмерные выборки:

      (%i1) load("draw")$
      (%i2) load ("numericalio")$
      (%i3) s2 : read_matrix (file_search ("wind.data"))$
      (%i4) draw3d(
               title = "Daily average wind speeds. Two data sets",
               point_size = 2,
               key        = "Sample from stations 1, 2 and 3",
               points(args(submatrix (s2, 4, 5))),
               point_type = 4,
               key        = "Sample from stations 1, 4 and 5",
               points(args(submatrix (s2, 2, 3))) )$

  Категории:Пакет draw ·

Графический объект: polygon ([[x1,y1], [x2,y2],...])
Графический объект: polygon ([x1,x2,...], [y1,y2,...])

  Строит многоугольник в двух измерениях.

  Два измерения

  `polygon ([[x1,y1], [x2,y2],...])` или `polygon ([x1,x2,...], [y1,y2,...])`: строит на плоскости многоугольник с вершинами `[x1,y1]`, `[x2,y2]`, и т.д.

  Следующие графические опции влияют на этот объект: `transparent`, `fill_color`, `border`, `line_width`, `key`, `line_type` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(color      = "#e245f0",
                   line_width = 8,
                   polygon([[3,2],[7,2],[5,5]]),
                   border      = false,
                   fill_color  = yellow,
                   polygon([[5,2],[9,2],[7,5]]) )$

  Категории:Пакет draw ·

Графический объект: rectangle ([x1,y1], [x2,y2])

  Строит прямоугольники в двух измерениях.

  Два измерения

  `rectangle ([x1,y1], [x2,y2])` строит прямоугольник с противоположными вершинами `[x1,y1]` и `[x2,y2]`.

  Следующие графические опции влияют на этот объект: `transparent`, `fill_color`, `border`, `line_width`, `key`, `line_type` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(fill_color  = red,
                   line_width  = 6,
                   line_type   = dots,
                   transparent = false,
                   fill_color  = blue,
                   rectangle([-2,-2],[8,-1]), /* opposite vertices */
                   transparent = true,
                   line_type   = solid,
                   line_width  = 1,
                   rectangle([9,4],[2,-1.5]),
                   xrange      = [-3,10],
                   yrange      = [-3,4.5] )$

  Категории:Пакет draw ·

Графический объект: bars ([x1,h1,w1], [x2,h2,w2, ...])

  Строит вертикальные полоски в двух измерениях.

  Два измерения

  `bars ([x1,h1,w1], [x2,h2,w2, ...])` Строит полоски с центрами на x1, x2, ... с высотами h1, h2, ... и ширинами w1, w2, ...

  Следующие графические опции влияют на этот объект: `key`, `fill_color`, `fill_density` и `line_width`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(
             key          = "Group A",
             fill_color   = blue,
             fill_density = 0.2,
             bars([0.8,5,0.4],[1.8,7,0.4],[2.8,-4,0.4]),
             key          = "Group B",
             fill_color   = red,
             fill_density = 0.6,
             line_width   = 4,
             bars([1.2,4,0.4],[2.2,-2,0.4],[3.2,5,0.4]),
             xaxis = true);

  Категории:Пакет draw ·

Графический объект: ellipse (xc, yc, a, b, ang1, ang2)

  Строит эллипсы и круги в двух измерениях.

  Два измерения

  `ellipse (xc, yc, a, b, ang1, ang2)` строит эллипс с центром в `[xc, yc]` с горизонтальной и вертикальной полу-осями a и b соответственно от угла ang1 до угла ang2.

  Следующие графические опции влияют на этот объект: `nticks`, `transparent`, `fill_color`, `border`, `line_width`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(transparent = false,
                   fill_color  = red,
                   color       = gray30,
                   transparent = false,
                   line_width  = 5,
                   ellipse(0,6,3,2,270,-270),
                   /* center (x,y), a, b, start & end in degrees */
                   transparent = true,
                   color       = blue,
                   line_width  = 3,
                   ellipse(2.5,6,2,3,30,-90),
                   xrange      = [-3,6],
                   yrange      = [2,9] )$

  Категории:Пакет draw ·

Графический объект: label ([string,x,y],...)
Графический объект: label ([string,x,y,z],...)

  Изображает текстовую метку в двух или трех измерениях.

  Следующие графические опции влияют на этот объект: `label_alignment`, `label_orientation` и `color`.

  Два измерения

  `label([string,x,y])` изображает текст string в точке `[x,y]`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(yrange = [0.1,1.4],
                   color = "red",
                   label(["Label in red",0,0.3]),
                   color = "#0000ff",
                   label(["Label in blue",0,0.6]),
                   color = "light-blue",
                   label(["Label in light-blue",0,0.9],
                         ["Another ligght-blue",0,1.2])  )$

  Три измерения

  `label([string,x,y,z])` изображает текст string в точке `[x,y,z]`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(exp(sin(x)+cos(x^2)),x,-3,3,y,-3,3),
                   color = red,
                   label(["UP 1",-2,0,3], ["UP 2",1.5,0,4]),
                   color = blue,
                   label(["DOWN 1",2,0,-3]) )$

  Категории:Пакет draw ·

Графический объект: vector ([x,y], [dx,dy])
Графический объект: vector ([x,y,z], [dx,dy,dz])

  Строит вектор в двух или трех измерениях.

  Следующие графические опции влияют на этот объект: `head_both`, `head_length`, `head_angle`, `head_type`, `line_width`, `line_type`, `key` и `color`.

  Два измерения

  `vector([x,y], [dx,dy])` строит вектор `[dx,dy]` с началом в точке `[x,y]`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(xrange      = [0,12],
                   yrange      = [0,10],
                   head_length = 1,
                   vector([0,1],[5,5]), /* default type */
                   head_type = 'empty,
                   vector([3,1],[5,5]),
                   head_both = true,
                   head_type = 'nofilled,
                   line_type = dots,
                   vector([6,1],[5,5]))$

  Три измерения

  `vector([x,y,z], [dx,dy,dz])` строит вектор `[dx,dy,dz]` с началом в точке `[x,y,z]`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(color = cyan,
                   vector([0,0,0],[1,1,1]/sqrt(3)),
                   vector([0,0,0],[1,-1,0]/sqrt(2)),
                   vector([0,0,0],[1,1,-2]/sqrt(6)) )$

  Категории:Пакет draw ·

Графический объект: explicit (fcn,var,minval,maxval)
Графический объект: explicit (fcn,var1,minval1,maxval1,var2,minval2,maxval2)

  Строит явную функцию в двух или трех измерениях.

  Два измерения

  `explicit(fcn,var,minval,maxval)` строит явную функцию fcn переменной var, принимающей значения от minval до maxval.

  Следующие графические опции влияют на этот объект: `nticks`, `adapt_depth`, `line_width`, `line_type`, `key`, `filled_func`, `fill_color` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(line_width = 3,
                   color      = blue,
                   explicit(x^2,x,-3,3) )$
      (%i3) draw2d(fill_color  = brown,
                   filled_func = true,
                   explicit(x^2,x,-3,3) )$

  Три измерения

  `explicit(fcn,var1,minval1,maxval1,var2,minval2,maxval2)` строит явную функцию fcn переменной var1 в пределах от minval1 до maxval1, и переменной var2 в пределах от minval2 до maxval2.

  Следующие графические опции влияют на этот объект: `xu_grid`, `yv_grid`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(key   = "Gauss",
                   color = "#a02c00",
                   explicit(20*exp(-x^2-y^2)-10,x,-3,3,y,-3,3),
                   yv_grid     = 10,
                   color = blue,
                   key   = "Plane",
                   explicit(x+y,x,-5,5,y,-5,5),
                   surface_hide = true)$

  См. `filled_func` по поводу функций с заполнением.

  Категории:Пакет draw ·

Графический объект: implicit (fcn,x,xmin,xmax,y,ymin,ymax)
Графический объект: implicit (fcn,x,xmin,xmax,y,ymin,ymax,z,zmin,zmax)

  Строит неявную функцию в двух и трех измерениях.

  Два измерения

  `implicit(fcn,x,xmin,xmax,y,ymin,ymax)` строит неявную функцию, определенную fcn с переменной x, принимающей значения от xmin до xmax, и переменной y, принимающей значения от ymin до ymax.

  Следующие графические опции влияют на этот объект: `ip_grid`, `ip_grid_in`, `line_width`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(terminal  = eps,
                   grid      = true,
                   line_type = solid,
                   key       = "y^2=x^3-2*x+1",
                   implicit(y^2=x^3-2*x+1, x, -4,4, y, -4,4),
                   line_type = dots,
                   key       = "x^3+y^3 = 3*x*y^2-x-1",
                   implicit(x^3+y^3 = 3*x*y^2-x-1, x,-4,4, y,-4,4),
                   title     = "Two implicit functions" )$

  Три измерения

  `implicit (fcn,x,xmin,xmax, y,ymin,ymax, z,zmin,zmax)` строит неявную поверхность, определенную fcn, с переменной x, принимающей значения от xmin до xmax, переменной y, принимающей значения от ymin до ymax и переменной z, принимающей значения от zmin до zmax. Для построения используется алгоритм марширующих кубов.

  Следующие графические опции влияют на этот объект: `x_voxel`, `y_voxel`, `z_voxel`, `line_width`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(
              color=blue,
              implicit((x^2+y^2+z^2-1)*(x^2+(y-1.5)^2+z^2-0.5)=0.015,
                       x,-1,1,y,-1.2,2.3,z,-1,1),
              surface_hide=true);

  Категории:Пакет draw ·

Графический объект: polar (radius,ang,minang,maxang)

  Строит двумерную функцию в полярных координатах.

  Два измерения

  `polar (radius,ang,minang,maxang)` изображает функцию `radius(ang)` в полярных координатах переменной ang в пределах от minang до maxang.

  Следующие графические опции влияют на этот объект: `nticks`, `line_width`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(user_preamble = "set grid polar",
                   nticks        = 200,
                   xrange        = [-5,5],
                   yrange        = [-5,5],
                   color         = blue,
                   line_width    = 3,
                   title         = "Hyperbolic Spiral",
                   polar(10/theta,theta,1,10*%pi) )$

  Категории:Пакет draw ·

Графический объект: spherical (radius,azi,minazi,maxazi,zen,minzen,maxzen)

  Строит трехмерную функцию в сферических координатах.

  Три измерения

  `spherical (radius,azi,minazi,maxazi,zen,minzen,maxzen)` строит функцию `radius(azi,zen)` в сферических координатах с азимутом azi в пределах от minazi до maxazi и возвышением zen в пределах от minzen до maxzen.

  Следующие графические опции влияют на этот объект: `xu_grid`, `yv_grid`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(spherical(1,a,0,2*%pi,z,0,%pi))$

  Категории:Пакет draw ·

Графический объект: cylindrical (radius,z,minz,maxz,azi,minazi,maxazi)

  Строит трехмерную функцию в цилиндрических координатах.

  Три измерения

  `cylindrical (radius,z,minz,maxz,azi,minazi,maxazi)` строит функцию `radius(z,azi)` в цилиндрических координатах с z в пределах от minz до maxz и азимутом azi в пределах от minazi до maxazi.

  Следующие графические опции влияют на этот объект: `xu_grid`, `yv_grid`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(cylindrical(1,z,-2,2,az,0,2*%pi))$

  Категории:Пакет draw ·

Графический объект: parametric (xfun,yfun,par,parmin,parmax)
Графический объект: parametric (xfun,yfun,zfun,par,parmin,parmax)

  Строит параметрическую функцию в двух и трех переменных.

  Следующие графические опции влияют на этот объект: `nticks`, `line_width`, `line_type`, `key` и `color`.

  Два измерения

  `parametric (xfun,yfun,par,parmin,parmax)` строит параметрическую функцию `[xfun,yfun]` с параметром par, принимающим значения от parmin до parmax.

  Пример:

      (%i1) load("draw")$
      (%i2) draw2d(explicit(exp(x),x,-1,3),
                   color = red,
                   key   = "This is the parametric one!!",
                   parametric(2*cos(rrr),rrr^2,rrr,0,2*%pi))$

  Три измерения

  `parametric (xfun,yfun,zfun,par,parmin,parmax)` строит параметрическую кривую `[xfun,yfun,zfun]` с параметром par, принимающем значения от parmin до parmax.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(explicit(exp(sin(x)+cos(x^2)),x,-3,3,y,-3,3),
                   color = royalblue,
                   parametric(cos(5*u)^2,sin(7*u),u-2,u,0,2),
                   color      = turquoise,
                   line_width = 2,
                   parametric(t^2,sin(t),2+t,t,0,2),
                   surface_hide = true,
                   title = "Surface & curves" )$

  Категории:Пакет draw ·

Графический объект: image (im,x0,y0,width,height)

  Строит в двух измерениях.

  Два измерения

  `image (im,x0,y0,width,height)` строит изображение im в прямоугольной области от угла `(x0,y0)` до `(x0+width,y0+height)` на вещественной плоскости. Параметр im должен быть матрицей вещественных чисел, или матрицей векторов длины 3, или объект типа картина.

  Если im – матрица вещественных чисел или объект картина уровней, то значения пикселов интерпретируются в соответствии с графической опцией `palette`, которая является вектором длины 3 с компонентами, принимающими значение от -36 до +36. Каждое значение является индексом формулы, преобразующей значение уровня в красный, зеленый и синий цвета соответственно:

       0: 0               1: 0.5           2: 1
       3: x               4: x^2           5: x^3
       6: x^4             7: sqrt(x)       8: sqrt(sqrt(x))
       9: sin(90x)       10: cos(90x)     11: |x-0.5|
      12: (2x-1)^2       13: sin(180x)    14: |cos(180x)|
      15: sin(360x)      16: cos(360x)    17: |sin(360x)|
      18: |cos(360x)|    19: |sin(720x)|  20: |cos(720x)|
      21: 3x             22: 3x-1         23: 3x-2
      24: |3x-1|         25: |3x-2|       26: (3x-1)/2
      27: (3x-2)/2       28: |(3x-1)/2|   29: |(3x-2)/2|
      30: x/0.32-0.78125                  31: 2*x-0.84
      32: 4x;1;-2x+1.84;x/0.08-11.5
      33: |2*x - 0.5|    34: 2*x          35: 2*x - 0.5
      36: 2*x - 1

  Отрицательные числа означают отрицательные цветовые компоненты.

  `palette = gray` и `palette = color` являются сокращениями для `palette = [3,3,3]` и `palette = [7,5,15]` соответственно.

  Если im – матрица векторов длины 3 или объект rgb-картина, то они интерпретируются как красный, зеленый и синий цвета.

  Примеры:

  Если im – матрица вещественных чисел или объект картина уровней, то значения пикселов интерпретируются в соответствии с графической опцией `palette`.

      (%i1) load("draw")$
      (%i2) im: apply(
                 'matrix,
                  makelist(makelist(random(200),i,1,30),i,1,30))$
      (%i3) /* palette = color, default */
            draw2d(image(im,0,0,30,30))$
      (%i4) draw2d(palette = gray, image(im,0,0,30,30))$
      (%i5) draw2d(palette = [15,20,-4],
                   colorbox=false,
                   image(im,0,0,30,30))$

  См. `colorbox`.

  Если im – матрица векторов длины 3 или объект rgb-картина, то они интерпретируются как красный, зеленый и синий цвета.

      (%i1) load("draw")$
      (%i2) im: apply(
                  'matrix,
                   makelist(
                     makelist([random(300),
                               random(300),
                               random(300)],i,1,30),i,1,30))$
      (%i3) draw2d(image(im,0,0,30,30))$

  Пакет `draw` автоматически загружает пакет `picture`. В данном примере, объект типа картина уровней строится вручную и потом изображается.

      (%i1) load("draw")$
      (%i2) im: make_level_picture([45,87,2,134,204,16],3,2);
      (%o2)       picture(level, 3, 2, {Array:  #(45 87 2 134 204 16)})
      (%i3) /* default color palette */
            draw2d(image(im,0,0,30,30))$
      (%i4) /* gray palette */
            draw2d(palette = gray,
                   image(im,0,0,30,30))$

  Файл xpm читается и изображается.

      (%i1) load("draw")$
      (%i2) im: read_xpm("myfile.xpm")$
      (%i3) draw2d(image(im,0,0,10,7))$

  См. `make_level_picture`, `make_rgb_picture` и `read_xpm`.

  По ссылке URL http://www.telefonica.net/web2/biomates/maxima/gpdraw/image находятся более развернутые примеры.

  Категории:Пакет draw ·

Глобальная переменная: boundaries_array

  Значение по умолчанию: `false`

  `boundaries_array` – это массив, в котором графический объект `geomap` ищет координаты границ.

  Каждая компонента `boundaries_array` есть массив чисел с плавающей точкой – координат многоугольного сегмента или границы карты.

  См. `geomap`.

  Категории:Пакет draw ·

Графический объект: geomap (numlist)
Графический объект: geomap (numlist,3Dprojection)

  Строит карты в двух и трех измерениях.

  Два измерения

  Эта функция работает вместе с глобальной переменной `boundaries_array`.

  Аргумент numlist – список, содержащий числа или списки чисел. Все числа должны быть неотрицательными целыми, которые представляют компоненты глобального массива `boundaries_array`.

  Каждая компонента `boundaries_array` есть массив чисел с плавающей точкой – координат многоугольного сегмента или границы карты.

  Функция `geomap (numlist)` проецирует свои аргументы на плоскость и строит соответствующую границу из `boundaries_array`.

  Следующие графические опции влияют на этот объект: `line_width`, `line_type` и `color`.

  Примеры:

  Простая карта, определенная вручную:

      (%i1) load("draw")$
      (%i2) /* Vertices of boundary #0: {(1,1),(2,5),(4,3)} */
         ( bnd0: make_array(flonum,6),
           bnd0[0]:1.0, bnd0[1]:1.0, bnd0[2]:2.0,
           bnd0[3]:5.0, bnd0[4]:4.0, bnd0[5]:3.0 )$
      (%i3) /* Vertices of boundary #1: {(4,3),(5,4),(6,4),(5,1)} */
         ( bnd1: make_array(flonum,8),
           bnd1[0]:4.0, bnd1[1]:3.0, bnd1[2]:5.0, bnd1[3]:4.0,
           bnd1[4]:6.0, bnd1[5]:4.0, bnd1[6]:5.0, bnd1[7]:1.0)$
      (%i4) /* Vertices of boundary #2: {(5,1), (3,0), (1,1)} */
         ( bnd2: make_array(flonum,6),
           bnd2[0]:5.0, bnd2[1]:1.0, bnd2[2]:3.0,
           bnd2[3]:0.0, bnd2[4]:1.0, bnd2[5]:1.0 )$
      (%i5) /* Vertices of boundary #3: {(1,1), (4,3)} */
         ( bnd3: make_array(flonum,4),
           bnd3[0]:1.0, bnd3[1]:1.0, bnd3[2]:4.0, bnd3[3]:3.0)$
      (%i6) /* Vertices of boundary #4: {(4,3), (5,1)} */
         ( bnd4: make_array(flonum,4),
           bnd4[0]:4.0, bnd4[1]:3.0, bnd4[2]:5.0, bnd4[3]:1.0)$
      (%i7) /* Pack all together in boundaries_array */
         ( boundaries_array: make_array(any,5),
           boundaries_array[0]: bnd0, boundaries_array[1]: bnd1,
           boundaries_array[2]: bnd2, boundaries_array[3]: bnd3,
           boundaries_array[4]: bnd4 )$
      (%i8) draw2d(geomap([0,1,2,3,4]))$

  Вспомогательный пакет `worldmap` заносит в `boundaries_array` реальные границы (долгота, широта). Эти данные публично доступны и получены из http://www-cger.nies.go.jp/grid-e/gridtxt/grid19.html. Пакет `worldmap` также определяет границы стран, континентов и береговых линий в форме списков с необходимыми компонентами `boundaries_array` (см. файл `share/draw/worldmap.mac` для дальнейшей информации). Пакет `draw` не загружает автоматически пакет `worldmap`.

      (%i1) load("draw")$
      (%i2) load("worldmap")$
      (%i3) c1: gr2d(geomap(Canada,United_States,
                            Mexico,Cuba))$
      (%i4) c2: gr2d(geomap(Africa))$
      (%i5) c3: gr2d(geomap(Oceania,China,Japan))$
      (%i6) c4: gr2d(geomap(France,Portugal,Spain,
                            Morocco,Western_Sahara))$
      (%i7) draw(columns  = 2,
                 c1,c2,c3,c4)$

  Пакет `worldmap` также полезен для изображения стран в виде многоугольников. В этом случае графический объект `geomap` не нужен и вместо его используется объект `polygon`. Т.к. в этом случае используются списки а не массивы, то изображение карт будет мудреннее. См. `make_poly_country` и `make_poly_continent`, чтобы понять следующий код.

      (%i1) load("draw")$
      (%i2) load("worldmap")$
      (%i3) mymap: append(
         [color      = white],  /* borders are white */
         [fill_color = red],             make_poly_country(Bolivia),
         [fill_color = cyan],            make_poly_country(Paraguay),
         [fill_color = green],           make_poly_country(Colombia),
         [fill_color = blue],            make_poly_country(Chile),
         [fill_color = "#23ab0f"],       make_poly_country(Brazil),
         [fill_color = goldenrod],       make_poly_country(Argentina),
         [fill_color = "midnight-blue"], make_poly_country(Uruguay))$
      (%i4) apply(draw2d, mymap)$

  Три измерения

  `geomap (numlist)` проецирует границы карты на сферу единичного радиуса с центром (0,0,0). Сферу и тип проекции можно изменить при помощи `geomap (numlist,3Dprojection)`.

  Доступны следующие трехмерные проекции:

  - `[spherical_projection,x,y,z,r]`: проецирует границы карты на сферу радиуса r с центром в (x,y,z).

        (%i1) load("draw")$
        (%i2) load("worldmap")$
        (%i3) draw3d(geomap(Australia), /* default projection */
                     geomap(Australia,
                            [spherical_projection,2,2,2,3]))$

  - `[cylindrical_projection,x,y,z,r,rc]`: ре-проецирует сферические границы карты на цилиндр радиуса rc и осью, проходящей через полюса глобуса радиуса r с центром в (x,y,z).

        (%i1) load("draw")$
        (%i2) load("worldmap")$
        (%i3) draw3d(geomap([America_coastlines,Eurasia_coastlines],
                            [cylindrical_projection,2,2,2,3,4]))$

  - `[conic_projection,x,y,z,r,alpha]`: ре-проецирует сферические границы карты на конус с углом alpha с осью, проходящей через полюса глобуса радиуса r с центром в (x,y,z). Оба северный и южный конусы касательны к сфере.

        (%i1) load("draw")$
        (%i2) load("worldmap")$
        (%i3) draw3d(geomap(World_coastlines,
                            [conic_projection,0,0,0,1,90]))$

  См. http://www.telefonica.net/web2/biomates/maxima/gpdraw/geomap для более сложных примеров.

  Категории:Пакет draw ·

Графический объект: parametric_surface (xfun,yfun,zfun,par1,par1min,par1max,par2,par2min,par2max)

  Строит параметрическую поверхность в трех измерениях.

  Три измерения

  `parametric_surface (xfun,yfun,zfun,par1,par1min,par1max,par2,par2min,par2max)` строит параметрическую поверхность `[xfun,yfun,zfun]`, с параметром par1, принимающем значения от par1min до par1max и параметром par2, принимающем значения от par2min до par2max.

  Следующие графические опции влияют на этот объект: `xu_grid`, `yv_grid`, `line_type`, `key` и `color`.

  Пример:

      (%i1) load("draw")$
      (%i2) draw3d(title          = "Sea shell",
                   xu_grid        = 100,
                   yv_grid        = 25,
                   rot_vertical   = 100,
                   rot_horizontal = 20,
                   surface_hide   = true,
                   parametric_surface(0.5*u*cos(u)*(cos(v)+1),
                                 0.5*u*sin(u)*(cos(v)+1),
                                 u*sin(v) - ((u+3)/8*%pi)^2 - 20,
                                 u, 0, 13*%pi, v, -%pi, %pi) )$

  Категории:Пакет draw ·

Функция: draw (gr2d, ..., gr3d, ..., options, ...)

  Изображает серию графических сцен. Ее аргументы есть `gr2d` и/или `gr3d` графические объекты вместе с некоторыми опциями. По умолчанию сцены собираются вместе в одну колонку.

  Функция `draw` принимает следующие глобальные опции: `terminal`, `columns`, `pic_width`, `pic_height`, `eps_width`, `eps_height`, `file_name` и `delay`.

  Функции `draw2d` и `draw3d` – сокращения, которые используются, когда требуется изобразить только одну сцену в двух или трех измерениях соответственно.

  Для того, чтобы использовать эту функцию, ее следует загрузить командой `load("draw")`.

  Пример:

      (%i1) load("draw")$
      (%i2) scene1: gr2d(title="Ellipse",
                         nticks=30,
                         parametric(2*cos(t),5*sin(t),t,0,2*%pi))$
      (%i3) scene2: gr2d(title="Triangle",
                         polygon([4,5,7],[6,4,2]))$
      (%i4) draw(scene1, scene2, columns = 2)$

  Эти две команды эквивалентны:

      (%i1) load("draw")$
      (%i2) draw(gr3d(explicit(x^2+y^2,x,-1,1,y,-1,1)));
      (%o2)                          [gr3d(explicit)]
      (%i3) draw3d(explicit(x^2+y^2,x,-1,1,y,-1,1));
      (%o3)                          [gr3d(explicit)]

  Анимированный файл gif:

      (%i1) load("draw")$
      (%i2) draw(
              delay     = 100,
              file_name = "zzz",
              terminal  = 'animated_gif,
              gr2d(explicit(x^2,x,-1,1)),
              gr2d(explicit(x^3,x,-1,1)),
              gr2d(explicit(x^4,x,-1,1)));
      End of animation sequence
      (%o2)          [gr2d(explicit), gr2d(explicit), gr2d(explicit)]

  См. `gr2d`, `gr3d`, `draw2d` и `draw3d`.

  Категории:Пакет draw ·Вывод файлов ·

Функция: draw2d (option, graphic_object, ...)

  Эта функция является сокращением для `draw(gr2d(options, ..., graphic_object, ...))`.

  Она может использоваться для изображения одиночной двумерной сцены.

  Для того, чтобы использовать эту функцию, ее следует загрузить командой `load("draw")`.

  См. также `draw` и `gr2d`.

  Категории:Пакет draw ·Вывод файлов ·

Функция: draw3d (option, graphic_object, ...)

  Эта функция является сокращением для `draw(gr3d(options, ..., graphic_object, ...))`.

  Она может использоваться для изображения одиночной трехмерной сцены.

  Для того, чтобы использовать эту функцию, ее следует загрузить командой `load("draw")`.

  См. также `draw` и `gr3d`.

  Категории:Пакет draw ·Вывод файлов ·

Next: Функции и переменные для картин, Previous: Введение в пакет draw, Up: Пакет draw [Contents][Index]