R plotrix, полярный график без разрывов

Я использую пакет plotrix для получения полярных координат из моих измерений.

Похоже, что даже когда я привожу измерения для всех полярных координат от 1 до 360 градусов (или одинаково от 0 до 359), первая и последняя точки не связаны. Например

require(plotrix)
polar.plot(seq(1,360),polar.pos=1:360,radial.lim=c(0,361),rp.type="l")

Быстрое и грязное исправление, которое я нашел, заключалось в том, чтобы добавить еще одну точку измерения, поэтому вместо 360 используйте 361.

as

 polar.plot(seq(1,360),polar.pos=0:360,radial.lim=c(0,361),rp.type="l")

который выдает предупреждающие сообщения.

Warning messages:
1: In cos(radial.pos[i, ]) * lengths[i, ] :
  longer object length is not a multiple of shorter object length
2: In sin(radial.pos[i, ]) * lengths[i, ] :
  longer object length is not a multiple of shorter object length

Есть ли какие-либо альтернативы, поскольку мне не нравится показывать предупреждающие сообщения для конечных пользователей :)

Я хотел бы поблагодарить вас за ваш ответ

С уважением Алекс


person Alex P    schedule 10.07.2017    source источник


Ответы (1)


Он собирается соединить их по порядку. Итак, если вы хотите, чтобы последняя вертикальная линия вернулась к началу координат, вам нужно добавить точку данных в конце вектора, чтобы сделать это. Ошибка, которую вы получили, заключается в том, что вы добавили дополнительное значение к одной координате, но не к другой, поэтому x и y не равны. Он переработал один из векторов, чтобы заполнить его, что дало вам то, что вы хотели, но предупредило вас об этом.

polar.plot(c(seq(1,360), 1),
           polar.pos = c(1:360, 1),
           radial.lim = c(0,361),
           rp.type = "l")

введите здесь описание изображения

person Eric Watt    schedule 10.07.2017