Graphviz: how to visualize a graph related to specific node connection points?

I want to display a graph in a similar layout to the following:

wanted

I tried this:

digraph EDP { graph [colorscheme=paired12]; node [label="\N", shape=box, style="rounded,filled", colorscheme=paired12, color=8, fillcolor=7, width="1.2", fontname="Arial narrow", fontsize=12]; edge [colorscheme=paired12, color=8, fontsize=11, fontname="Arial narrow"]; src [label="Source"]; dst [label="Destination"]; filter [label="Filter"]; src -> dst [label="Encoding process"]; src -> filter [label="a"]; filter -> dst [label="b"]; src -> filter [dir=back, label=c]; filter -> dst [dir=back, label=d]; src -> dst [dir=back, label="Decoding process"]; } 

which generated the following result: (Not very nice ...

my

Can someone show me the closest solution? (Perhaps it is impossible to do exactly the same)

+4
source share
1 answer

As soon as I got to the bell at night:

 digraph EDP { graph [colorscheme=paired12]; node [label="\N", shape=box, style="rounded,filled", colorscheme=paired12, color=8, fillcolor=7, width="1.2", fontname="Arial narrow", fontsize=12]; edge [colorscheme=paired12, color=8, fontsize=11, fontname="Arial narrow"]; src [width=3.5, label="Source"]; dst [width=3.5, label="Destination"]; filter [label="Filter"]; edge[constraint=false]; src -> dst [label="Encoding\nprocess"]; src -> filter [label="a"]; filter -> dst [label="b"]; dst -> filter [label="c"]; filter -> src [label="d"]; dst -> src [label="Decoding\nprocess"]; edge[style=invis, constraint=true]; src->filter->dst; } 

Save the graph as edp.gv and create an image using

 dot -Gsplines=none edp.gv | neato -n -Gsplines=ortho -Tpng -o edp.png 

Result:

closest possible graphviz output

Some notes:

  • As a result, I put constraint=false on all edges and added invisible edges so that the three nodal centers were
  • I usually like to use dir=back , but I could not use it when rendering with -Gsplines=ortho
  • As you can see, the order of the edges is random ...
+8
source

Source: https://habr.com/ru/post/1383746/


All Articles