【问题标题】:How to add 3 dots in a graphviz network diagram?如何在graphviz网络图中添加3个点?
【发布时间】:2021-08-23 07:52:36
【问题描述】:

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

DiagrammeR::grViz("digraph G {

rankdir = LR

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

输出到:

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

我想要的类似于本例中的 3 个点(取自this study/source):

【问题讨论】:

    标签: r graphviz dot diagrammer


    【解决方案1】:

    有两个挑战

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

    如果输出是 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):

    【讨论】:

    • 完美运行! :)
    猜你喜欢
    • 2012-08-21
    • 2021-02-16
    • 1970-01-01
    • 2014-05-25
    • 1970-01-01
    • 2021-10-27
    • 1970-01-01
    • 2022-01-07
    • 2019-06-01
    相关资源
    最近更新 更多