gvpack.1 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. .TH GVPACK 1 "27 May 2010"
  2. .SH NAME
  3. gvpack \- merge and pack disjoint graphs
  4. .SH SYNOPSIS
  5. .B gvpack
  6. [
  7. .B \-nguv?
  8. ]
  9. [
  10. .BI \-m margin
  11. ]
  12. [
  13. .B \-array\fIopts\fP
  14. ]
  15. [
  16. .BI \-o outfile
  17. ]
  18. [
  19. .BI \-s graph_name
  20. ]
  21. [
  22. .BI \-G name\fB=\fPvalue
  23. ]
  24. [
  25. .I files
  26. ]
  27. .SH DESCRIPTION
  28. .B gvpack
  29. reads in a stream of graphs, combines the graphs into a single
  30. layout, and produces a single graph serving as the union of the
  31. input graphs. The input graphs must be in dot format, and must have
  32. all necessary layout information. Acceptable input is produced
  33. by applying a Graphviz layout program, such as \fBdot\fP or \fBneato\fP,
  34. with no \fB\-T\fP flag.
  35. .P
  36. By default, the packing is done at the cluster level. Thus, parts of
  37. one graph will not intrude into any top\(hylevel clusters or overlap
  38. any nodes or edges of another.
  39. .P
  40. The output of \fBgvpack\fP can be used to produce concrete output
  41. by applying \fBneato \-s \-n2\fP with the desired \fB\-T\fP flag.
  42. .SH OPTIONS
  43. The following options are supported:
  44. .TP
  45. .B \-g
  46. Combines the graphs at the graph level. This uses more space, but prevents
  47. parts of one graph from occurring between parts of another.
  48. .TP
  49. .BI \-array\fI[_flags][n]\fP
  50. Combines the graphs at the graph level, placing them in an array.
  51. By default, the layout is done in row-major order. The number of columns
  52. used is roughly the square root of the number of graphs. If the optional
  53. integer \fIn\fP is supplied, this indicates the number of columns to use.
  54. .TP
  55. If optional flags are supplied, these consist of an underscore followed
  56. by any of the letters "c", "t", "b", "l", "r", "u" or "i".
  57. If "c" is supplied, the graphs are packed in column-major order, in which
  58. case a final integer specifies the number of rows.
  59. The flags "t", "b", "l", "r" indicate that components are aligned
  60. along the top, bottom, left or right, respectively.
  61. By default, the insertion order is determined by sorting the graphs by size,
  62. largest to smallest. If
  63. the "u" flag is set, the graphs are sorted based on the non-negative integer
  64. \fIsortv\fP attribute attached to each graph.
  65. The "i" flag indicates that no sorting is done, with the graphs inserted in
  66. input order.
  67. .TP
  68. .BI \-G "name\fB=\fPvalue"
  69. Specifies attributes to be added to the resulting union graph. For
  70. example, this can be used to specify a graph label.
  71. .TP
  72. .BI \-m "margin"
  73. Packs the graphs allowing a margin of \fIoutput\fP points around
  74. the parts.
  75. .TP
  76. .B \-n
  77. Combines the graphs at the node level. Clusters are ignored in the packing.
  78. .TP
  79. .BI \-o "output"
  80. Prints output to the file \fIoutput\fP. If not given, \fBgvpack\fP
  81. uses stdout.
  82. .TP
  83. .BI \-s "graph_name"
  84. Use \fIgraph_name\fP as the name of the root graph. By default, "root"
  85. is used.
  86. .TP
  87. .B \-u
  88. Don't pack the graphs. Just combine them into a single graph.
  89. .TP
  90. .B \-v
  91. Verbose mode.
  92. .TP
  93. .B \-?
  94. Prints usage information and exit.
  95. .SH OPERANDS
  96. The following operand is supported:
  97. .TP 8
  98. .I files
  99. Names of files containing 1 or more graphs in dot format.
  100. If no
  101. .I files
  102. operand is specified,
  103. the standard input will be used.
  104. .SH RETURN CODES
  105. .B gvpack
  106. returns
  107. .B 0
  108. if there were no problems, and non\(hyzero otherwise.
  109. .SH EXAMPLES
  110. .EX
  111. ccomps \-x abc.gv | dot | gvpack | neato \-s \-n2 \-Tps
  112. .EE
  113. This pipeline decomposes the graph in \fIabc.gv\fP into its
  114. connected components, lays out each using \fBdot\fP, packs them all together
  115. again, and produces the final drawing in PostScript. Of course,
  116. there is nothing to prevent one from using different layouts for
  117. each component.
  118. .SH "BUGS"
  119. All the input graphs must be directed or undirected.
  120. .P
  121. An input graph should not have a label, since this will be used in its
  122. layout. Since \fBgvpack\fP ignores root graph labels, resulting layout
  123. may contain some extra space.
  124. .P
  125. \fBgvpack\fP unsets the bounding box attribute of all non\(hycluster
  126. subgraphs.
  127. .SH AUTHORS
  128. Emden R. Gansner <[email protected]>
  129. .SH "SEE ALSO"
  130. gvpr(1), dot(1), neato(1), twopi(1), ccomps(1), libpack(3)