2014-12-26 2 views
3

때때로 layout.fruchterman.reingold와 같은 레이아웃 알고리즘을 사용하면 구조의 나머지 부분에서 불균형 적으로 확장된다는 의미에서 아웃 라이어 인 일부 노드를 얻을 수 있습니다 . 누구든지 가장자리에 최대 길이 (예 : = 1)를 부과하여 가장자리가 최대 길이를 초과 할 수 없으므로 이러한 이상 치를 제거 할 수있는 방법을 알고 있습니까? 비에 의존하는 예와 질문을 할 때igraph layout.fruchterman.reingold 아웃 라이어 (예제 이미지 포함)

l <- layout.fruchterman.reingold(subgraph) * scaleFactor 

Example of Outliers

답변

1

이 아니오 Fruchterman-Reingold 알고리즘 그것을위한 기능 내장 (나는 단순히 네트워크의 비 특이 부분을 "압축"수도 있기 때문에 xmin, ymin, xmaxymax를 사용하여 작동하지 않을 것이라는 점을 의심 이상치를위한 더 많은 공간을 만들기 위해), 그러나 당신은 아마 가장자리 무게로 실험 할 수 있습니다. FR 레이아웃 알고리즘이 가중치와 함께 사용될 때 알고리즘은 더 큰 가중치를 갖는 에지를 더 짧게 만들기 위해 노력할 것입니다. 아마도 "이상치"정점 (즉, 차수가 1 또는 2 인 정점)의 가중치를 더 작은 값으로 설정할 수 있습니다. 또 다른 가능성은 가장자리의 가중치를 두 끝점의 각도에 따라 다르게하여 작은 각도가 더 작은 값에 매핑되지만 큰 각도는 이 아니며은 불균형 적으로 더 큰 값에 매핑됩니다. 어쩌면 두 끝점의 도수의 기하 평균이 될 수 있습니다. 여기서 유용합니다. 하지만 내가 아는 한 "보편적 인"해결책은 없으므로 조금 실험해야 할 것입니다.

+0

감사합니다. Tamas, 많이 감사합니다! – SOUser

-1

:

l <- layout.fruchterman.reingold(subgraph) 

은 BTW, 나는 물건을 REGIN에 배율 인수 이미 고용 알고 있어요 기본 기능을 사용하고 있다면 어떤 패키지에 살고 있는지 기억해야합니다.

(궁금한 점은 igraph에 있습니다.) fruchterman-reingold 레이아웃 방법

igraph의 문서는 "인수"에 포함

이 xMin, XMAX의 한계

그들 중 하나 또는 둘 모두가 NULL 경우 첫째, 좌표 이 방향을 따라 정규화가 수행되지 않습니다.

Ymin를, Ymax와

대한 출입 금지 그들 중 하나 또는 모두가 일절 정규화이 방향에 따라 수행되지 NULL 인 경우 제 좌표.

는 Zmin, Zmax 순 세 번째 한계 좌표

, 그들 중 하나 또는 모두가 NULL 인 경우에는 다음 정규화 방향이 수행되지 않는다.

... 그래서 x와 y에 제한을 설정 하시겠습니까? Z가 3 차원 그래프가 아니라면 Z는 필요하지 않습니다.

관련 문제