Как нарисовать узлы на концентрических окружностях в R?
Я использую пакет qgraph в R для создания сети из матрицы смежности. Я хочу, чтобы узлы отображались концентрическими кругами, один узел начинался посередине, а затем строил узлы на разных кругах.
Я получил этот код для создания этих кругов и вычисления координат для узлов:
nNodes=1
layoutnew <- matrix(0,nrow=nNodes,ncol=2)
tl=nNodes+1
layoutnew[,1]=sin(seq(0,2*pi, length=tl))[-tl]
layoutnew[,2]=cos(seq(0,2*pi, length=tl))[-tl]
layoutnew <- layoutnew/2
nNodes2=4
layoutnew2 <- matrix(0,nrow=nNodes2,ncol=2)
tl2=nNodes2+1
layoutnew2[,1]=sin(seq(0,2*pi, length=tl2))[-tl2]
layoutnew2[,2]=cos(seq(0,2*pi, length=tl2))[-tl2]
Этот код работает для двух кругов, с 1 узлом в середине и 4 на следующем круге, но третий круг (с, как предполагается, имеет еще два узла) наносится поверх второго круга. Для этого круга я использовал следующий код:
nNodes3=2
layoutnew3 <- matrix(0,nrow=nNodes3,ncol=2)
tl3=nNodes3+1
layoutnew3[,1]=sin(seq(0,2*pi, length=tl3))[-tl3]
layoutnew3[,2]=cos(seq(0,2*pi, length=tl3))[-tl3]
Кто-нибудь знает, почему это так? Возможно, есть другой способ вычисления координат для узлов на концентрических окружностях?
Спасибо!