r - 使用 DiagrammeR 将一排节点放置在另一排节点下方
问题描述
DiagrammeR
给定以下通过包派生的流程图:
DiagrammeR::DiagrammeR(diagram =
"
graph LR;
A[Start]-->B;
B --> C;
C --> D;
D --> E;
E --> F;
")
是否可以包装它,使节点E
位于节点下方D
,节点F
位于左侧,如下图所示:
解决方案
您可以使用该graphviz
选项执行此操作。
例如,您可以使用获取图形的基本节点位置
library(DiagrammeR)
grViz("
digraph flow {
D -> E;
{rank=same ; A -> B -> C -> D};
{rank=same ; F -> E[dir=back]};
}
")
你可以添加一些属性来美化它
grViz('
digraph flow {
# set characteristics
node[shape=square,
height=1,
color=skyblue,
penwidth=2,
fillcolor=lavender,
style=filled,
fontsize=25,
fontcolor=grey46,
fontname = "helvetica" # this may be OS dependent
];
edge[minlen=2,
color=grey,
penwidth=2
];
nodesep=0.5; #hack
A[label=Start];
# Graph
D -> E;
{rank=same ; A -> B -> C -> D};
{rank=same ; F -> E[dir=back]};
}
')
哪个生产
推荐阅读
- powershell - 如何在 PowerShell 中创建 JSON?
- javascript - 从数组创建组合并将其转换为 javascript 中的多维排列?
- r - 如何从 R Shiny selectInput() 中的列表中提取元素名称而不是值?
- java - Intellij idea Debug:应用程序正在运行
- c++ - 使用 Visual Studio 2020 的 C++ 无法使用 .length()
- r - 错误:“rjags”的包或命名空间加载失败
- php - 如何从php获取数据到html
- mongodb - 查询 MongoDB 中的嵌套对象数组
- javascript - 与关键和子组件反应的关键道具警告
- json - 如何在 App Inventor 中解析 JSON 文件?