2016-06-10 2 views
1

igraph 플롯의 버텍스 좌표를 수동으로 설정하려고합니다. 좌표는 위도와 경도 값을 나타냅니다.igraph 플롯 레이아웃 오류 : 행렬의 첨자 수가 잘못되었습니다.

vertex.attributes(g_mat_cut) 
$name 
[1] "010C10AB53" "010C10BEA5" "010C10C3A5" "010C10CA44" "010C10CBBD" 
[6] "010C10D28B" "010C10D28E" "010C10EA1E" "010C10EFE8" "010C11059F" 
[11] "010C1108EB" "010C1111B5" "010C111428" "010C11169A" "010C112145" 
[16] "010C114E81" "010C115391" "010C116DC1" "010C117822" "010C117E53" 
[21] "010C1180A0" "010C11922B" "010C119C7E" "010C11A61D" "010C11B911" 
[26] "010C11BBA6" "010C11BC8D" "010C11BEB7" 

$shape 
[1] "circle" "square" "square" "square" "square" "square" "square" "square" 
[9] "circle" "square" "square" "square" "square" "square" "square" "circle" 
[17] "circle" "circle" "circle" "circle" "square" "square" "square" "square" 
[25] "square" "circle" "square" "circle" 

$color 
[1] "#99D594" "#3288BD" "#3288BD" "#3288BD" "#99D594" "#99D594" "#3288BD" 
[8] "#3288BD" "#D53E4F" "#D53E4F" "#99D594" "#3288BD" "#3288BD" "#3288BD" 
[15] "#3288BD" "#3288BD" "#D53E4F" "#D53E4F" "#3288BD" "#3288BD" "#3288BD" 
[22] "#99D594" "#3288BD" "#99D594" "#3288BD" "#3288BD" "#FEE08B" "#FEE08B" 
-

다음 정점으로

> g_mat_cut 
IGRAPH UNW- 28 88 -- 
+ attr: name (v/c), shape (v/c), color (v/c), weight (e/n) 
+ edges (vertex names): 
[1] 010C10AB53--010C10CA44 010C10AB53--010C10D28B 010C10AB53--010C10D28E 
[4] 010C10AB53--010C10EA1E 010C10AB53--010C1108EB 010C10AB53--010C11169A 
[7] 010C10AB53--010C112145 010C10AB53--010C117822 010C10AB53--010C117E53 
[10] 010C10AB53--010C1180A0 010C10AB53--010C11922B 010C10AB53--010C11B911 
[13] 010C10AB53--010C11BBA6 010C10AB53--010C11BC8D 010C10AB53--010C11BEB7 
[16] 010C10C3A5--010C116DC1 010C10CA44--010C10D28B 010C10CA44--010C114E81 
[19] 010C10CA44--010C11B911 010C10CA44--010C11BBA6 010C10CBBD--010C117822 
[22] 010C10D28B--010C10D28E 010C10D28B--010C1108EB 010C10D28B--010C11169A 
+ ... omitted several edges 

속성 객체 - 그래프 : 여기

Error in ec[, 3:4] <- t(sapply(seq(length = nrow(el)), function(x) { : 
incorrect number of subscripts on matrix 

내가 사용하고있는 개체/변수 : 나는 오류가 계속

정점 위치에 대한 공간 좌표 :

coords 
      [,1]  [,2] 
[1,] 50.19954 -5.169506 
[2,] 50.19866 -5.168653 
[3,] 50.19853 -5.169905 
[4,] 50.19856 -5.168397 
[5,] 50.19954 -5.169506 
[6,] 50.19794 -5.168535 
[7,] 50.19833 -5.169241 
[8,] 50.19897 -5.169436 
[9,] 50.19915 -5.169564 
[10,] 50.19908 -5.169429 
[11,] 50.19878 -5.169403 
[12,] 50.19857 -5.170018 
[13,] 50.19859 -5.168570 
[14,] 50.19847 -5.169863 
[15,] 50.19982 -5.171222 
[16,] 50.19866 -5.168653 
[17,] 50.19844 -5.168694 
[18,] 50.19794 -5.168535 
[19,] 50.19833 -5.169241 
[20,] 50.19781 -5.168733 
[21,] 50.19855 -5.168908 
[22,] 50.19915 -5.169564 
[23,] 50.20034 -5.170551 
[24,] 50.19878 -5.169697 
[25,] 50.19882 -5.170664 
[26,] 50.19982 -5.171222 
[27,] 50.19838 -5.170642 
[28,] 50.19841 -5.169932 

str(coords) 
num [1:28, 1:2] 50.2 50.2 50.2 50.2 50.2 ... 

attempt at plotting: 

    plot(g_mat_cut,layout=coords,vertex.size=4,rescale=FALSE,xlim=c(50.19,50.21),ylim=c(-5.16,-5.18)) 
Error in ec[, 3:4] <- t(sapply(seq(length = nrow(el)), function(x) { : 
incorrect number of subscripts on matrix 

답변

0

나는 정말로 당신의 질문에 대답 할 수 없지만 내가 시도한 것들이 당신을 도울 수 있습니다.

일부 정점에 대해 원과 다른 정점 모양을 갖기 때문에 동일한 문제가 있습니다. 다른 꼭지점 모양을 사용하고 레이아웃 행렬을 지정하지 않으면 정상적으로 작동합니다. 그리고 모두 vertex.shape = "circle"을 가지며 레이아웃 매트릭스를 지정하는 것도 효과가 있습니다. vertex.shape = "square" 설정이있는 레이아웃 매트릭스와 플롯하려고 - 재현하지 - 라인 : 당신이 볼 수 있듯이, 이미 힘을

Error in y1 - y2 : non-numeric argument to binary operator

시도 :

plot(gBase, layout=matrix(c(as.numeric(V(gBase)$lon), as.numeric(V(gBase)$lat)), ncol=2), vertex.label=NA, vertex.shape = "square", vertex.size = as.numeric(V(gBase)$size), vertex.size2=as.numeric(V(gBase)$size2))

이 오류를 제공합니다 크기와 레이아웃은 숫자로 표시됩니다 (처음부터 숫자 값으로 설정되어 있음). vertex.shape = "circle"vertex.shape = "rectangle"으로 바꿀 수 있으므로 .size2이 실제로 적용됩니다. 오류는 동일합니다.

따라서 문제는 "정사각형"또는 "직사각형"모양의 정점을 배치하는 것으로 가정합니다.

documentation에는 모양을 사용한 플롯팅과 정의 된 레이아웃 만이 실제로 도움이되지 않습니다.

관련 문제