В пространстве кроме декартовой системы координат используются и другие (см. значения опции coords в таблице опций трехмерной графики). Наиболее часто применяются цилиндрическая и сферическая системы координат. В пакете plots предусмотрены специальные команды, отображающие график функций двух независимых переменных в этих системах координат: cylinderplot() и sphereplot().
В цилиндрической системе координат положение точки задаётся углом поворота theta проекции её радиус-вектора на плоскость xy относительно положительного направления оси х, длиной r этой проекции и значением координаты z точки. Команда cylinderplot() отображает поверхность, заданную либо в виде явной функции, выражающей зависимость координаты r от двух других theta и z, либо в параметрическом виде, при котором каждая из координат определяется как функция двух параметров. В случае явного задания функции команда имеет следующий синтаксис:
cylinderplot(r-exp, theta=диапазон, z=диапазон)
Здесь первый аргумент r-exp является выражением от двух переменных theta и z и представляет явный вид задания функции.
Для параметрической функции используется другая её форма, в которой первый аргумент является трёхэлементным списком, представляющим зависимость трёх координат поверхности в цилиндрической системе координат через два параметра следующие два аргумента определяют диапазон изменения параметров поверхности:
cylinderplot([r-exp,theta-expr,z-expr], param1=диапазон, param2=диапазон)
Как и во всех графических командах, кроме указанных аргументов можно использовать любые опции трёхмерной графики. Рисунок, приведенный ниже демонстрирует построение поверхности в цилиндрической системе координат./
Замечание. Следует не забывать подключать пакет plots при обращении ко всем командам данного раздела. В наших примерах мы предполагаем, что он подключен.
Построение поверхности в цилиндрической системе координат (Круговой цилиндр радиуса 1 и высотой 2)
(Параметрически заданная поверхность)
(Спиральный цилиндр высотой 2)
В сферической системе координат положение точки определяется двумя углами и одним линейным размером. Первый угол theta, как и в цилиндрической системе координат, задаёт угол поворота проекции радиус-вектора точки на плоскость xy. Второй угол phi, который образует радиус-вектор точки с положительным направлением оси z декартовой системы координат. Линейная координата r представляет длину радиус-вектора точки. При работе с командой sphereplot(), как и в случае с командой построения поверхностей, заданных в цилиндрической системе координат, возможно либо явное задание поверхности, либо параметрическое. В первом случае необходимо в качестве первого аргумента передать выражение длины радиус-вектора через угловые координаты и задать их диапазоны изменения, во втором случае следует задать список сферических координат точек поверхности в форме выражений от двух параметров:
sphereplot(r-exp, theta=диапазон, phi=диапазон)
sphereplot([r-exp,theta-expr,phi-expr], param1=диапазон, param2=диапазон)
Рисунки, приведенные ниже, иллюстрируют построение поверхностей в сферической системе координат.