# How can I create Arguments Maps with Mathematica's graph functions?

I am relatively new to Mathematica, and I would like to know how I could use it to represent an Argument Map, such as those that you generate on online tools such as http://debategraph.org.

The goal is to test an algorithm on a Argument-Map-like data structure. I think this should not be too difficult as they are nothing else but simple graphs with vertex/edge labeling.

• have you looked at what can be done with graphs? what did you try? or are you asking "please come up with a data structure and visualise it in mathematica"?
– acl
Dec 27, 2012 at 14:42
• The DebateGraph web site appears to create collapsed visualizations of trees or tree-ish graphs. The visualization appears to start with a subgraph in which the selected nodes are only those a distance of 1 (or maybe 2) from the root. When one clicks on a node, the visualization shifts so that the new visualized subgraph includes nodes a distance of 1 (or, again, maybe 2) from the selected node. This would be a good project to implement in Mathematica using EventHandler. Dec 27, 2012 at 15:03
• Thanks a lot for your inputs, I have indeed looked at Graphs but my Mathematica knowledge is too "low", I don't know how to get started. Any hints would be appreciated :) Dec 28, 2012 at 10:24
• @afentis if you've worked out how to do it, consider posting an answer to your own question. The idea is that if someone else tries to do this and finds your question, they find your answer too. It's actually encouraged to answer one's own question.
– acl
Dec 28, 2012 at 13:16
• @acl just did it, thanks ;) Dec 28, 2012 at 15:23

Once again thanks a lot, I have found the way the use graphs to reproduce the kind of graph I wanted to create.

Using the built-in graph and trees functions, one can quite easily build a model like this one:

TreePlot[{{"It Rains" ->  "The tiles are wet",
"Pro"}, {"It Rains" -> "The Dog is wet",
"Pro"}, {"It Rains" -> "Pouki is inside",
"Pro"}, {"It Rains" -> "Eric went to work", "Con"}},
VertexLabeling -> True, DirectedEdges -> True,