I had that graphviz/twisted graphing thing working for some test code, but upon applying it to some deferreds that're getting stuck in some production code, I didn't get the same pleasing output - not entirely surprising. Part of the issue is that some of the deferreds have already disappeared (which in a way is a good thing - less to sift through to find what's left), and part of the matter is I believe there are some custom __repr__'s in the code that are causing my graph code to discover violated assumptions.
Anyway, what I got, greatly truncated on the right, looks like:
Deferred_at_0x46edcf8 -> bound_method_DeferredList._cbDeferred_of_DeferredList_at_0x46ed3b0_current_result
Deferred_at_0x46edcf8 -> bound_method_DeferredList._cbDeferred_of_DeferredList_at_0x46ed3b0_current_result