What software is used to draw undirected graphs? I need to make a nicer-looking version of this image:

Is there some program that generates these graphs? Or are they done by hand in something like Visio?
(I'm on Mac OS X, and I have access to Windows if needed)
 A: Try Graphviz.
A: If you use $\LaTeX$, tikz is very nice for making graphs (I use it all the time to make commutative diagrams). 
Otherwise one could use pretty much any vector graphics program, for example the free (as in freedom and in beer) inkscape. 
There's also dia, though it is more for UML-like diagrams.
A: Sage can generate graphs.  It's like Mathematica/Maple but it's open source and free.
A: The igraph library for R allows you to plot graphs.  Combined with tikzDevice, it can also produce LaTeX output of the plots.
Here's an example:

The graph itself was produced using the R code
g <- graph.empty() + vertices(letters[1:3])
g <- add.edges(g,c(1,2,2,3,3,1,2,2))
g <- as.undirected(g)

and was plotted to a LaTeX file using the R code
tikz("~/Dropbox/Thesis/Thoughts/temp.tex",standAlone=FALSE,width=4,height=4)
plot(g,layout=layout.fruchterman.reingold,vertex.size=30,edge.width=3,edge.color="black")
dev.off()

A: Since no one else has mentioned it yet, yEd, a free diagram/graph editor.
A: I've found Gliffy to be a great method of doing this, and it has the advantage of being totally web based--nothing to install or screw up across operating systems.
A: Try Gephi is a open source mac for graphs....http://gephi.org
A: Simple, online, free
If graph layout does not matter you can use Wolfram Alpha
Graph 1->2, 1->3, 2->3, 2->2


https://www.wolframalpha.com/input/?i=Graph+1-%3E2,+1-%3E3,+2-%3E3,+2-%3E2
A: Just adding one other option. TikZiT seems to bee a multi-platform GUI tool that can generate TikZ code (for inclusion in LaTeX documents). Together with QtikZ/Ktikz this can be used to quickly produce pdf and/or png versions of a graph.
