MM2GV(1) General Commands Manual MM2GV(1)

# [NAME](#NAME)

mm2gv - Matrix Market-DOT converters

# [SYNOPSIS](#SYNOPSIS)

**mm2gv** \[ **-cluv?** ] \[ **-Ui** ] \[ **-ooutfile** ] \[ *file* ]

# [DESCRIPTION](#DESCRIPTION)

**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

0 *M* $*M* sup *T*$ 0

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.

# [OPTIONS](#OPTIONS)

The following options are supported:

[**-c**](#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**](#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**](#u)

If specified, the graph is assumed to be undirected. By default, the graph generated is directed.

[**-v**](#v)

This flag causes **mm2gv** to store the matrix values as the *"len"* attribute of the corresponding edge.

[**-Ubflag**](#U)

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**](#o)

Prints output to the file *outfile*. If not given, **mm2gv** uses stdout.

# [OPERANDS](#OPERANDS)

The following operand is supported:

[*file*](#file)

Name of the file in MatrixMarket format. If no *file* operand is specified, the standard input will be used.

# [RETURN CODES](#RETURN_CODES)

Return **0** if there were no problems during conversion; and non-zero if any error occurred.

# [AUTHORS](#AUTHORS)

Yifan Hu &lt;yifanhu@yahoo.com&gt;  
Emden R. Gansner &lt;erg@graphviz.com&gt;

# [ADDITIONAL INFO](#ADDITIONAL_INFO)

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.

31 July 2008

---

Document: mm2gv(1) from graphviz 15.1.1-r2 (Chainguard OS)
Source: https://gitlab.com/graphviz/graphviz
