AbuGraph is a Java application for the visualization of those
data structures commonly known as Graphs. Informally speaking, a graph
is just a set of points (or nodes) which are connected by lines (or
edges). Graphs are widely used in mathematics and computer science.
Common examples of graphs are neural networks, binary trees,
semantic networks or finite state diagrams among many others.
AbuGraph can be easily used without paying too
much attention on all those graphic details which are commonly used to draw a
graph; so, common objects like lines, ellipses, text labels or arrows are
automatically generated by the program, since the user just needs to specify
nodes and connections between them using a simple set of commands for that.
AbuGraph has been devised to be used in two different ways:
- Like a regular graph drawing tool. In this case the user generates
commands towards AbuGraph using a simple text console and a reduced set
of instructions. An acceptable graph layout can be generated in few minutes
using this approach.
- Like a visualization tool. Here, the user is another program
which communicates with AbuGraph using a TCP connection. In this case,
AbuGraph works as a graphical server processing the commands generated
by another program. In such way, any data structure working as part of that
program could be easily viewed as a graph.
In both cases the graph evolution can be followed in real time, since
new nodes and edges are dynamically added to the graph just at the moment when
they are requested. So, AbuGraph can be used to replace or complement
plain text traces for evolving graphs by means of a single and easy to use
graphical user interface.
The AbuGraph drawing algorithm is basically the same than the one used by
Graph Layout, a small demo applet distributed by Sun Microsystems as part
of the Java Developers Kit. AbuGraph is basically an evolution of Graph
Layout which allows a better interaction with the user or with other
programs (you can check out the original Graph Layout
here or, if available, on your local JDK installation under the
"demo/applets" directory).
AbuGraph is free software distributed according the
Modified BSD License
conditions, so you can freely use, modify and distribute the program if you wish.