How to rearrange diagram in R

与世无争的帅哥 提交于 2019-12-01 08:50:57

Create graph with attr_theme = NULL:

g <- create_graph(nodes_df=nodes, edges_df=edges, attr_theme = NULL)

In current version, DiagrammeR sets the global attribute layout to neato. You can check this with:

g <- create_graph(nodes_df=nodes, edges_df=edges)
get_global_graph_attrs(g)

#           attr      value attr_type
# 1       layout      neato     graph
# 2  outputorder edgesfirst     graph
# 3     fontname  Helvetica      node
# 4     fontsize         10      node
# 5        shape     circle      node
# 6    fixedsize       true      node
# 7        width        0.5      node
# 8        style     filled      node
# 9    fillcolor  aliceblue      node
# 10       color     gray70      node
# 11   fontcolor     gray50      node
# 12         len        1.5      edge
# 13       color     gray40      edge
# 14   arrowsize        0.5      edge

You can also set these attributes with set_global_graph_attrs after creating the graph object.

You can also set these attributes with set_global_graph_attrs after creating the graph object.

I tried the above and failed when doing the following:

set_global_graph_attrs(
    graph = graph,
    attr = c("layout", "rankdir", "splines"),
    value = c("dot", "LR", "false"),
    attr_type = c("graph", "graph", "graph"))

render_graph(graph2)

The output would still have the same graph attributes as before.

Using the magrittr %>%then worked for me.

graph1 <-
   create_graph(
      nodes_df = ndf,
      edges_df = edf) %>%
   set_global_graph_attrs(
      attr = c("layout", "rankdir", "splines"),
      value = c("dot", "LR", "false"),
      attr_type = c("graph", "graph", "graph"))

Documentation for all node, edge and graph attributes here: http://www.graphviz.org/doc/info/attrs.html#h:uses

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!