2017-02-07 1 views
3

현재 R 버전 3.2.2에 DiagrammeR R 패키지가 있습니다. 다음 코드를 실행하려고 할 때 나는이 두 가지 오류를 얻을 : 다이어그램 작성자가 노드를 만들 수 없습니다.

Error: could not find function "create_nodes"

edges <- create_edges(from = match(df$col1, uniquenodes), 
         to = match(df$col2,uniquenodes), 
         rel = "related") 

library(DiagrammeR) 
nodes <- create_nodes(nodes = seq(uniquenodes), 
         type = "number", 
         label = uniquenodes) 

Error: could not find function "create_edges"

+2

'packageVersion ("DiagrammeR")을 실행하십시오 NULL로 설정하면 모양을 찾아온다 제공하지만,이 더 여기에 설명 된대로 내게는 magrittr:%>%와 함께 작업을위한 기능 set_global_graph_attributes를 사용하여 조정할 수 있습니다 . API가 최근에 바뀌었고,'DiagrammeR' 0.9.0을 사용한다면'create_node_df'로 바꾸어야합니다. (제 생각에는 – Benjamin

+0

0.9.0 버전을 사용하고 다음과 같이 코드 라인을 사용했습니다 : nodes <-create_node_df = seq ...'여전히 작동하지 않습니다 –

답변

3

아래의 코드는 DiagrammeR 0.9.0와 호환되어야합니다. 그래프가 DiagrammeR creates "wrong" diagram in R에서 생성 된 것과 다른 모양으로 나타납니다. 나는 0.935에 render_graph을 가지고 놀지 않았기 때문에, 초기 모습을 얻는 방법을 아직 모릅니다.

df <- data.frame(col1 = c("Cat", "Dog", "Bird"), 
       col2 = c("Feline", "Canis", "Avis"), 
       stringsAsFactors = FALSE) 
uniquenodes <- unique(c(df$col1, df$col2)) 

uniquenodes 

library(DiagrammeR) 

nodes <- create_node_df(n=length(uniquenodes), 
         type="number", 
         label=uniquenodes) 
edges <- create_edge_df(from=match(df$col1, uniquenodes), 
         to=match(df$col2, uniquenodes), 
         rel="related") 
g <- create_graph(nodes_df=nodes, 
        edges_df=edges) 
render_graph(g) 
+0

이것은 문서의 예제보다 더 많은 도움을주었습니다. – user5359531

1

I haven't played with render_graph in 0.9.0 very much, so am not yet sure how to get the earlier appearance.

서로 다른 모양은 "기본"으로 설정되어 기능 create_graph에 인수 attr_theme에서 온다. ` https://stackoverflow.com/a/42676248/6816220

관련 문제