mm2gv - Matrix Market-DOT converters
mm2gv [ -cluv? ] [ -Ui ] [ -ooutfile ]
[ file ]
mm2gv converts a sparse matrix of the Matrix Market format to a graph in
the GV (formerly DOT) format. If the matrix M is not square, the graph
is considered bipartite and the matrix is viewed as a bipartite graph
adjacency matrix, with the rows and columns of the matrix specifying the two
sets of vertices. Equivalently, the matrix is converted into a symmetric
square matrix
a block matrix with square blocks of 0's in the upper left and lower right, the
upper right block being M and the lower left block being the transpose
of M. This matrix is then viewed as the adjacency matrix of the graph.
For a square matrix, mm2gv uses it directly as an adjacency
matrix if its pattern of non-zero entries is symmetric; otherwise, it will
treat it as a bipartite graph as with the case of non-square matrices. This
behavior can be modified by the -U flag.
The following options are supported:
- -c
- This flag causes mm2gv to assign colors to the edges. The matrix
element is scaled to the range [0,1] depending on where it lies between
the minimum and maximum set matrix values. This scaled value is used as
the "wt" attribute of the corresponding edge. In
addition, this scalar value is mapped to an RGB value, which is stored as
the edge "color".
- -l
- If set, mm2gv attaches a label to the graph indicating the base
name of the input file, and the number of nodes and edges.
- -u
- If specified, the graph is assumed to be undirected. By default, the graph
generated is directed.
- -v
- This flag causes mm2gv to store the matrix values as the
"len" attribute of the corresponding edge.
- -Ubflag
- Specifies how square matrices are handled. If bflag is 0, a square
matrix will always be treated as an adjacency matrix. If bflag is 1
(the default), a square matrix with a symmetric pattern of non-zero
entries will be used as an adjacency matrix; otherwise, it will be used a
bipartite graph. If bflag is 2, a symmetric matrix will be used as
an adjacency matrix; otherwise, it will be used a bipartite graph. If
bflag is 3, any input matrix will be treated like a bipartite
graph.
- -ooutfile
- Prints output to the file outfile. If not given, mm2gv uses
stdout.
The following operand is supported:
- file
- Name of the file in MatrixMarket format. If no file operand is
specified, the standard input will be used.
Return 0 if there were no problems during conversion; and non-zero if any
error occurred.
Yifan Hu <yifanhu@yahoo.com>
Emden R. Gansner <erg@graphviz.com>
See http://math.nist.gov/MatrixMarket/ for description of the format and
http://www.cise.ufl.edu/research/sparse/matrices/ for a large collection of
sparse matrices in this format.