Provided by: graphviz_2.40.1-6_amd64

**NAME**

gvpack - merge and pack disjoint graphs

**SYNOPSIS**

gvpack[-nguv?] [-mmargin] [-array[_flags][n]] [-ooutfile] [-sgraph_name] [-Gname=value] [files]

**DESCRIPTION**

gvpackreads in a stream of graphs, combines the graphs into a single layout, and produces a single graph serving as the union of the input graphs. The input graphs must be in dot format, and must have all necessary layout information. Acceptable input is produced by applying a Graphviz layout program, such asdotorneato, with no-Tflag. By default, the packing is done at the cluster level. Thus, parts of one graph will not intrude into any top‐level clusters or overlap any nodes or edges of another. The output ofgvpackcan be used to produce concrete output by applyingneato-s-n2with the desired-Tflag.

**OPTIONS**

The following options are supported:-gCombines the graphs at the graph level. This uses more space, but prevents parts of one graph from occurring between parts of another.-array[_flags][n]Combines the graphs at the graph level, placing them in an array. By default, the layout is done in row-major order. The number of columns used is roughly the square root of the number of graphs. If the optional integernis supplied, this indicates the number of columns to use. If optional flags are supplied, these consist of an underscore followed by any of the letters "c", "t", "b", "l", "r", "u" or "i". If "c" is supplied, the graphs are packed in column-major order, in which case a final integer specifies the number of rows. The flags "t", "b", "l", "r" indicate that components are aligned along the top, bottom, left or right, respectively. By default, the insertion order is determined by sorting the graphs by size, largest to smallest. If the "u" flag is set, the graphs are sorted based on the non-negative integersortvattribute attached to each graph. The "i" flag indicates that no sorting is done, with the graphs inserted in input order.-Gname=valueSpecifies attributes to be added to the resulting union graph. For example, this can be used to specify a graph label.-mmarginPacks the graphs allowing a margin ofoutputpoints around the parts.-nCombines the graphs at the node level. Clusters are ignored in the packing.-ooutputPrints output to the fileoutput. If not given,gvpackuses stdout.-sgraph_nameUsegraph_nameas the name of the root graph. By default, "root" is used.-uDon't pack the graphs. Just combine them into a single graph.-vVerbose mode.-?Prints usage information and exit.

**OPERANDS**

The following operand is supported:filesNames of files containing 1 or more graphs in dot format. If nofilesoperand is specified, the standard input will be used.

**RETURN** **CODES**

gvpackreturns0if there were no problems, and non‐zero otherwise.

**EXAMPLES**

ccomps -x abc.gv | dot | gvpack | neato -s -n2 -Tps This pipeline decomposes the graph inabc.gvinto its connected components, lays out each usingdot, packs them all together again, and produces the final drawing in PostScript. Of course, there is nothing to prevent one from using different layouts for each component.

**BUGS**

All the input graphs must be directed or undirected. An input graph should not have a label, since this will be used in its layout. Sincegvpackignores root graph labels, resulting layout may contain some extra space.gvpackunsets the bounding box attribute of all non‐cluster subgraphs.

**AUTHORS**

Emden R. Gansner <erg@research.att.com>

**SEE** **ALSO**

gvpr(1), dot(1), neato(1), twopi(1), ccomps(1), libpack(3) 27 May 2010 GVPACK(1)