Question

I'd like to draw a network, as a fully connected directed graph, with arbitrary number of nodes and edges as shown in the pic. enter image description here What would be the easy way to draw this with GraphViz?

Was it helpful?

Solution

graphviz gallery has a very similar entry, with fancy graphic: it's as easy as replacing the names start, etc... with your own in the generating script. Feed it to dot program.

digraph G {bgcolor="red:cyan" gradientangle=0

    subgraph cluster_0 {
        style=filled;
        color=lightgrey;
        fillcolor="blue:yellow";
        gradientangle=90;
        node [fillcolor="yellow:green" style=filled gradientangle=270] a0;
        node [fillcolor="green:red"] a1;
        node [fillcolor="red:cyan"] a2;
        node [fillcolor="cyan:blue"] a3;

        a0 -> a1 -> a2 -> a3;
        label = "process #1";
    }

    subgraph cluster_1 {
        node [fillcolor="yellow:magenta" 
             style=filled gradientangle=270] b0;
        node [fillcolor="magenta:cyan"] b1;
        node [fillcolor="cyan:red"] b2;
        node [fillcolor="red:blue"] b3;

        b0 -> b1 -> b2 -> b3;
        label = "process #2";
        color=blue
        fillcolor="blue:yellow";
        style=filled;
        gradientangle=90;
    }
    start -> a0;
    start -> b0;
    a1 -> b3;
    b2 -> a3;
    a3 -> a0;
    a3 -> end;
    b3 -> end;

    start [shape=Mdiamond ,
        fillcolor="yellow:brown",
        gradientangle=90,
        style=radial];
    end [shape=Msquare,
        fillcolor="orange:blue",
        style=radial,
        gradientangle=90];
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top