Once I have generated a graph with neato, is it possible to extract the coordinate information of the vertices that neato has calculated?
I would like to use this information to plot a graph in MATLAB; I can't use gplot without any coordinate information, and all I have is the adjacency matrix.
Currently I am using MATLAB to plot a biograph, then extracting the coordinate information from that biograph to use with gplot, however the biograph drawing function runs a lot slower than neato, and the quality of graph layout is a lot better with neato as well.
Does anyone have any ideas that would help?
Graphviz offers a variety of output formats, among them dot
and xdot
.
The dot
output format contains layout information for the graph and its nodes and edges. If that's not enough, xdot
provides even more detailed information about how graphviz would draw the graph.
You may call neato with one of those output formats (-Tdot
parameter) and you then may parse the output. Or you may use the gvpr
tool (graphviz pattern scanning and processing language) to format the output in a custom and easily parseable manner (see this example).