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.
If you’re under Windows, Microsoft Visio will do just fine. Also, there are tools like Smartdraw and Gliffy, but I don’t have any experience with them.
I use OmniGraffle for such things on a Mac. Many people seem happy with the drawing packages in their word processor or presentation program, though. The advantage of an object based editing program is that you can keep arrows connected as you drag things around.
As a graphics doofus, I found Inkscape relatively easy to pick up the basics. But honestly, even a MS Paint/GNU Paint diagram would be better than nothing.
No. Do you have recommendations?
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.
If you’re under Windows, Microsoft Visio will do just fine. Also, there are tools like Smartdraw and Gliffy, but I don’t have any experience with them.
I use OmniGraffle for such things on a Mac. Many people seem happy with the drawing packages in their word processor or presentation program, though. The advantage of an object based editing program is that you can keep arrows connected as you drag things around.
As a graphics doofus, I found Inkscape relatively easy to pick up the basics. But honestly, even a MS Paint/GNU Paint diagram would be better than nothing.