Why does this link not show up in this graph?

Given the following graph:

definition
digraph {
  node [color=grey, shape=box, fontname="Helvetica", fontsize=13]
  edge [arrowsize=0.5]
  fontname="Courier"
  nodesep=0.5
  concentrate=true
  subgraph cluster_yonder {
    label="yonder"
    labeljust=l
    labelloc=t
    fontname= "Times-Bold"
    style="filled";
    fillcolor=seashell
    color=none
    margin=20

    M [label="<r>x | { <c> there | <k> x }", shape=record]
  }
  subgraph cluster_pub {
    label="Public Network"
    labeljust=l
    labelloc=t
    fontname= "Times-Bold"
    style="filled";
    fillcolor=seashell
    color=none
    margin=20

    HAB1 [label="<r>x | { <s>x | <c>x | <k>x }", shape=record]
 
  }
  subgraph cluster_priv {
    label="Private Network"
    labeljust=l
    labelloc=t
    fontname= "Times-Bold"
    style="filled"
    fillcolor=seashell;
    color=none
    margin=20

    HAR1 [label="<r>x | { <s>x | <c>x }", shape=record]

    MA [label="<r>x | { <d>x | <m>x}", shape=record]
    SA [label="<r>x | { <d>x }", shape=record]
    
    MPGM [label="<r>x | { <s>x | <b>x | <m>here | <l>x | <e>x }", shape=record]
    SPGM [label="<r>x | { <s>x | <b>x | <l>x | <e>x }", shape=record]
    
    MRDM [label="<r>x | { <s>x | <e>x }", shape=record]
    SRDM [label="<r>x | { <s>x | <e>x }", shape=record]
  }
  subgraph hab {
    HAB1:s:e -> HAR1:s:n
    HAR1:s:e -> MA:d:n
    HAR1:s:e -> SA:d:n
  }
  subgraph m {
    edge [color=blue, style=dashed, penwidth=0.3, weight=0]
    HAB1:c -> M:c:n
    HAR1:c -> M:c
    MA:m -> M:c
    MPGM:m:e -> M:c

    subgraph {
      edge [color=red, style=dashed, penwidth=0.3]
      HAB1:k -> M:k:e
    }
  }
  subgraph a {
    MA:d:e -> MPGM:b
    MA:d:e -> MRDM:s
    SA:d:e -> SPGM:b
    SA:d:e -> SRDM:s
  }
  subgraph d {
    MPGM:b:e -> MPGM:s:e [color=brown]
    SPGM:b:e -> SPGM:s:e [color=brown]
  }
}

why does the link from here to there not show up at all? The link in question is: MPGM:m:e -> M:c in the graph definition.

cluster_yonder yonder cluster_pub Public Network cluster_priv Private Network M x there x HAB1 x x x x HAB1:c->M:n HAB1:k->M:e HAR1 x x x HAB1:e->HAR1:n HAR1:c->M:c MA x x x HAR1:e->MA:n SA x x HAR1:e->SA:n MA:m->M:c MPGM x x x here x x MA:e->MPGM:b MRDM x x x MA:e->MRDM:s SPGM x x x x x SA:e->SPGM:b SRDM x x x SA:e->SRDM:s MPGM:e->MPGM:e SPGM:e->SPGM:e

When you run dot, you should be getting the error message:

Warning: flat edge between adjacent nodes one of which has a record shape - replace records with HTML-like labels
Edge MPGM -> M

There was probably some complication with trying to handle this edge using records (I can’t recall what), so it was left unimplemented with the option of using HTML-like labels.

1 Like