2017-12-18 4 views
1

그래프 세트 g에 정점 세트가 있고 목록에 몇 가지 "특수"정점 이름이 있습니다. 이 특수 정점에 대해서만 그래프에 정점 이름이있는 레이블을 표시하길 원합니다. igraph : 조건 별 정점 레이블 부착

나는이 같은 시도 :

plot(g, vertex.size = 4, vertex.label = ifelse(V(g) %in% usernames, V(g)$label, ""), asp = F) 

을하지만 술어가 TRUE를 입력하지 않기 때문에 분명히 내가 모르는 뭔가가있어. 또한, 다음과 같은 오류의 V (g) $ 라벨 결과처럼 보인다 :

Error in ans[test & ok] <- rep(yes, length.out = length(ans))[test & ok] : replacement has length zero

당신의 도움이

을 이해할 수있을 것이다! :)

+0

안녕하세요. 느슨한 코드 조각과 재현 할 수없는 오류 메시지 대신 붙여 넣기 실행을 복사 할 준비가 된 최소한의 재현 가능한 예제를 제공하는 것이 가장 좋습니다. – lukeA

답변

0

V(g)V(g)$label으로 변경 하시겠습니까?

set.seed(1) 
library(igraph) 
g <- ba.game(26) 
V(g)$label <- letters[1:26] 
usernames <- sample(letters, 5) 
plot(g, vertex.label = ifelse(V(g)$label %in% usernames, V(g)$label, NA)) 

또는

set.seed(1) 
library(igraph) 
g <- ba.game(26) 
usernames <- sample(vcount(g), 5) 
plot(g, vertex.label = ifelse(V(g) %in% usernames, V(g), NA)) 

?

관련 문제