繁体   English   中英

如何在graphviz网络图中添加3个点?

[英]How to add 3 dots in a graphviz network diagram?

我有一个简单的graphviz网络图,我想在其中展示我的 model 的神经网络架构:

DiagrammeR::grViz("digraph G {

rankdir = LR

{a b z} -> {x1, x2, x100} -> Y
                  
}")

输出到:

在此处输入图像描述

现在,我想在第一层的b之后和第二层的x2之后添加 3 个点(垂直),表示这些层中的节点比我在演示文稿中显示的要多。 例如,第二层 ( x1 , x2 ... x100 ) 中有 100 个节点(单元)。

我想要的类似于此示例中的 3 个点(取自此研究/来源):

在此处输入图像描述

有两个挑战

  1. 找到一种方法来显示垂直省略号(三个点)
  2. 保持原始节点以所需的顺序和位置显示

如果 output 是 SVG,但不是 png,则以下适用于我的计算机。 如果 SVG 对你来说没问题,那就去吧。 如果您需要直接创建 png,则可以使用嵌入的图像。

digraph G {
rankdir = LR
splines=false  // straight lines, not curves
// define ellipsis nodes
E1[shape=none  label="⋮" fontsize=30]
E2[shape=none  label="⋮" fontsize=30]
{rank=same a b E1 z}       // align on same rank
{rank=same x1 x2 E2 x100}  // align on same rank

{a b z} -> {x1, x2, x100} -> Y

// invisible edges to order nodes
edge[style=invis]
a->b->E1->z 
x1->x2->E2->x100 
}

给予(Imagemagick 将 svg 转换为 png):
在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM