SPRINGGRAPH(1)

πŸ‘‘ SPRINGGRAPH πŸ’…

okay bestie, welcome to springgraph, from the General Commands Manual β€” it renders a graph from a .dot file and honestly? it's giving physics nerd main character energy and we're obsessed.


✨ NAME ✨

springgraph β€” renders a graph from a .dot file πŸ¦‹


🌸 SYNOPSIS 🌸

springgraph [OPTIONS] < input-file.dot > output-file.png

πŸ’– DESCRIPTION πŸ’–

so here's the vibe. springgraph reads in a .dot file that describes a graph β€” for every node it tells you the node's name and which other nodes it's connected to β€” and then it renders the whole thing. the output is a PNG file, no cap. every node gets drawn as an ellipse and every connection gets drawn as an arrow. 🏹

and the node placement?? literally the coolest part. it's the result of all of the nodes moving away from each other, while all the nodes that are connected move toward each other. that movement just keeps repeating until it stabilizes. it's a whole situationship between the nodes and eventually they settle. periodt. πŸ’…

springgraph was written as an alternative to neato, which is part of graphviz. it attempts to read the same .dot files that graphviz uses, but currently only supports a limited number of node attributes β€” that's label and fillcolor β€” and it can only handle two nodes per edge definition ("node1 -> node2", not "node1 -> node2 -> node3"). so don't come for it about the three-node chain thing, it simply does not do that. 🫢


⭐ OPTIONS ⭐

springgraph accepts the following options:

  • -p β€” create a file that can be rendered with POV-Ray ✨
  • -v β€” create a VRML file 🌈
  • -s β€” this one sets the scale. all of the node locations get multiplied by it. increase the scale to eliminate node overlaps (no more besties sitting on top of each other), decrease the scale to make the graph smaller. πŸŽ€
  • -t β€” make the background of the resulting image transparent 🫧
  • -b β€” set the background color of the image. specify it in the form RRGGBB, in hex digits, e.g. FFFFFF is white, 000000 is black, FF0000 is red, ... 🎨
  • -l β€” set the line color, same format as the background color πŸ’œ
  • -h β€” display usage synopsis πŸ™ˆ

πŸ¦‹ EXAMPLE πŸ¦‹

 digraph {
  "rene" -> "myon";
  "mvo" -> "rene";
 }

πŸ”₯ SEE ALSO πŸ”₯

neato(1) sig2dot(1) http://www.graphviz.org/Documentation.php http://www.graphviz.org/cvs/doc/info/lang.html


πŸ’€ AUTHOR πŸ’€

this manual page was written by Kevin M. Rosenberg <kmr@debian.org>, for the Debian GNU/Linux system (but may be used by others). iconic of him honestly. πŸ‘‘


September 5, 2005 β€” yeah bestie, SPRINGGRAPH(1) has been slaying since 2005 and it's still the moment. mwah πŸ’‹ go render something pretty. 🌸✨