I am looking for a way to draw colored arrows alongside edges in Graphviz. It must be possible to choose which side of the edge they are on, and it must be possible to draw multiple arrows of differing colors on each side of each edge. The arrows represent packets of data, so ideally they should not touch the vertices.
I've looked at the documentation for Edge Attributes or Arrow Shapes, but do not see any way to do what I described.
The goal is to create a simple web app that allows me to simulate a network algorithm and see how that algorithm plays out, to replace doing it by hand (above). Any other suggestions for how to go about this would be appreciated.
This problem is poorly specified, maybe the following can help.
In no particular order:
not-very-close (using neato):
digraph G {
splines=false
node [shape=point xlabel="\N"]
edge [dir=none]
a -> b [color="red" dir=forward]
a -> b [color="green" dir=back]
a -> b
b -> x [color="green" dir=forward]
b -> x
x -> y
y -> a
c -> d [color="green:white:black:white:blue"]
d -> e [color="green:white:black:white:blue"]
e -> c [color="white:white:black:white:red"]
}