I looked through a paper of Pearl’s to see what causal diagrams look like, and what I saw seemed like a good match for Graphviz. I noticed that Shalizi used it for many of the diagrams in his thesis too.
Graphviz is the LaTeX of graph-drawing tools. You’ll get professional-looking output immediately, but the customization options aren’t as discoverable as they would be in a visual editor.
If you plan on making lots of graphs or want them to look very pretty, I’d recommend it. If you’re just looking for a quick way to draw a graph or two explaining TDT vs. CDT it may not be worth the time relative to a generic (vector) drawing program.
(The Python bindings might make things marginally easier if you know Python and don’t want to learn more syntax.)
I’m think you’re exaggerating how difficult it is to use graphviz for simple things by comparing it to LaTeX. Consider this diagram in the gallery and look at how trivially simple the source file that generates that image is.
I don’t disagree that doing complex things can be difficult, but for graphs that consist of a handful of nodes and edges with assorted labels, and some boxes to group nodes together, it’s hard to beat graphviz.
I looked through a paper of Pearl’s to see what causal diagrams look like, and what I saw seemed like a good match for Graphviz. I noticed that Shalizi used it for many of the diagrams in his thesis too.
Graphviz is the LaTeX of graph-drawing tools. You’ll get professional-looking output immediately, but the customization options aren’t as discoverable as they would be in a visual editor.
If you plan on making lots of graphs or want them to look very pretty, I’d recommend it. If you’re just looking for a quick way to draw a graph or two explaining TDT vs. CDT it may not be worth the time relative to a generic (vector) drawing program.
(The Python bindings might make things marginally easier if you know Python and don’t want to learn more syntax.)
I’m think you’re exaggerating how difficult it is to use graphviz for simple things by comparing it to LaTeX. Consider this diagram in the gallery and look at how trivially simple the source file that generates that image is.
I don’t disagree that doing complex things can be difficult, but for graphs that consist of a handful of nodes and edges with assorted labels, and some boxes to group nodes together, it’s hard to beat graphviz.