I've mostly used the dot component of the suite of graph rendering programs.
Claims rendered as interlinked sentences with arcs emerging from key words.
Contiguous USA exercised dot's layout engine by recreating geography from topology.
XML Import in Ruby where I first started producing intermediate snapshots in dot as a large program runs.
IRLP Script Call Map scraped from idiomatic script invocations I could find with perl.
Exploratory Parsing where parse statistics offer drill down through clickable counts on arcs.
Excel Parslets scraped excel workbooks exported in custom json to plot data flow across spreadsheets.
Animals Decision Tree in Dot created as an illustration for this portfolio.
I'm usually writing short scripts that read data of my own or others. In a second pass, I emit that data in dot format.
I've spent a lot of time coaxing my scripts to not output duplicate arcs. I've only noticed recently that if I declare a strict digraph graphviz will omit duplicates for me.
I have trouble remembering simple things, like how to make nodes other than white. I now maintain a wiki page of Graphviz Idioms.