source: general/genutils/graphviz.xml@ b79d11ba

12.2 trunk
Last change on this file since b79d11ba was 233a2c04, checked in by Douglas R. Reno <renodr@…>, 4 weeks ago

graphviz: text and style fixes

  • Property mode set to 100644
File size: 33.2 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY graphviz-download-http "https://gitlab.com/graphviz/graphviz/-/archive/&graphviz-version;/graphviz-&graphviz-version;.tar.bz2">
8 <!ENTITY graphviz-download-ftp " ">
9 <!ENTITY graphviz-md5sum "2c3ed90a06a2496c67b12ef3d5f93c5a">
10 <!ENTITY graphviz-size "25 MB">
11 <!ENTITY graphviz-buildsize "217 MB">
12 <!ENTITY graphviz-time "0.7 SBU (using parallelism=4)">
13]>
14
15<sect1 id="graphviz" xreflabel="Graphviz-&graphviz-version;">
16 <?dbhtml filename="graphviz.html"?>
17
18
19 <title>Graphviz-&graphviz-version;</title>
20
21 <indexterm zone="graphviz">
22 <primary sortas="a-Graphviz">Graphviz</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to Graphviz</title>
27
28 <para>
29 The <application>Graphviz</application> package contains graph
30 visualization software. Graph visualization is a way of representing
31 structural information as diagrams of abstract graphs and networks.
32 <application>Graphviz</application> has several main graph layout
33 programs. It also has web and interactive graphical interfaces, auxiliary
34 tools, libraries, and language bindings.
35 </para>
36
37 &lfs122_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&graphviz-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&graphviz-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &graphviz-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &graphviz-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &graphviz-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &graphviz-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Graphviz Dependencies</bridgehead>
74
75 <note>
76 <para>
77 Basic usage of <application>Graphviz</application> does not require any
78 libraries out of what is found in the LFS book. Its <quote>core</quote>
79 rendering engine is able to generate several graphic formats, such as
80 Postscript, SVG, VML, .fig, and Tk. Those formats can be converted
81 to almost any other format using tools from packages such as
82 <xref role="nodep" linkend="imagemagick"/>. The dependencies below add
83 the ability to generate graph images in bitmap format, to display the
84 graph image on screen, to edit a graph by viewing the resulting image
85 directly, or to view large graphs. Since
86 <application>Graphviz</application> is a dependency
87 of several other packages in this book, it is suggested that you first
88 build it without any dependencies, and then rebuild it when you have
89 built enough packages to suit your needs.
90 </para>
91 </note>
92
93 <bridgehead renderas="sect4">Optional, for various bitmap outputs</bridgehead>
94 <para role="optional">
95 <xref linkend="pango"/>, with
96 <xref linkend="cairo"/>,
97 <xref linkend="xorg7-lib"/>,
98 <xref linkend="fontconfig"/>, and
99 <xref linkend="libpng"/>, to generate images in bitmap SVG, postscript,
100 PNG, and PDF formats, or to display the image on screen. The PNG
101 output is required for building <xref role="nodep" linkend="gegl"/>
102 </para>
103
104 <para role="optional">
105 Adding &gtk2; with <xref linkend="libjpeg"/> adds support for JPEG, BMP,
106 TIF, and ICO formats, and allows displaying the image in a GTK+ window
107 </para>
108
109 <para role="optional">
110 <ulink url="https://www.libgd.org/">GD Library</ulink> may be used
111 instead of <application>Pango</application>. It adds the ability to
112 generate images in GIF, VRML, and GD formats, but
113 <application>Pango</application> provides better outputs for the other
114 formats, and is needed for displaying images
115 </para>
116
117 <para role="optional">
118 Other formats may be added with
119 <xref linkend="libwebp"/> (WebP support is considered experimental),
120 <ulink url="https://openil.sourceforge.net/projects.php">DevIL</ulink>,
121 <ulink url="https://sourceforge.net/projects/lasi/">libLASi</ulink>, and
122 <ulink url="https://www.freedesktop.org/wiki/Software/glitz">glitz</ulink>
123 </para>
124
125 <bridgehead renderas="sect4">Optional (to load graphics that may be
126 displayed inside the nodes of a graph)</bridgehead>
127
128 <para role="optional">
129 <filename class="libraryfile">libgs.so</filename> from
130 <xref linkend="gs"/>,
131 <xref linkend="librsvg"/>, and
132 <xref linkend="poppler"/>
133 </para>
134
135 <bridgehead renderas="sect4">Optional (to build more tools)</bridgehead>
136
137 <para role="optional">
138 <xref linkend="freeglut"/> (with
139 <ulink url="https://sourceforge.net/projects/gtkglext/">GtkGLExt</ulink> and
140 <ulink url="https://gts.sourceforge.net/">libGTS</ulink> for building
141 the <command>smyrna</command> large graph viewer, which is
142 considered experimental), and
143 &qt5-deps; (for building the <command>gvedit</command>
144 graph editor)
145 </para>
146
147 <bridgehead renderas="sect4">Optional (to build language bindings)</bridgehead>
148 <para role="optional">
149 <xref linkend="swig"/> (<application>SWIG</application> must be
150 installed or no bindings will be built),
151 <xref linkend="gcc"/> (for the go compiler),
152 <xref linkend="guile"/>,
153 <xref linkend="openjdk"/>,
154 <xref linkend="lua"/>,
155 <xref linkend="php"/>,
156 <xref linkend="ruby"/>,
157 <xref linkend="tk"/>,
158 <ulink url="https://iolanguage.org/">Io</ulink>,
159 <ulink url="https://www.mono-project.com/Main_Page">Mono</ulink>,
160 <ulink url="https://ocaml.org/">OCaml</ulink>, and
161 <ulink url="https://www.r-project.org/">R</ulink>
162 </para>
163
164 <bridgehead renderas="sect4">Optional (building tools)</bridgehead>
165 <para role="optional">
166 <ulink url="https://github.com/Snaipe/Criterion">Criterion</ulink>
167 (framework for tests) and
168 <ulink url="https://linux.softpedia.com/get/Programming/Debuggers/Electric-Fence-3305.shtml/">Electric Fence</ulink>
169 </para>
170
171 <bridgehead renderas="sect4">Optional (for building the pdf documentation)</bridgehead>
172 <para role="optional">
173 <xref linkend="gs"/> (for the <command>ps2pdf</command> command)
174 </para>
175
176 </sect2>
177
178 <sect2 role="installation">
179 <title>Installation of Graphviz</title>
180
181 <!-- https://gitlab.com/graphviz/graphviz/-/merge_requests/3739 -->
182
183 <!-- Removed in #20047 update to 12.0.0
184 <para>
185 Remove a duplicated declaration causing some <xref linkend='vala'/>
186 tests to fail:
187 </para>
188
189 <screen><userinput>awk -i inplace '/aghtmlstr/ &amp;&amp; ++f == 2 {getline} 1' \
190 lib/cgraph/cgraph.h</userinput></screen>
191 -->
192 <para>
193 Install <application>Graphviz</application> by running the following
194 commands:
195 </para>
196
197<screen><userinput>sed -i '/LIBPOSTFIX="64"/s/64//' configure.ac &amp;&amp;
198
199./autogen.sh &amp;&amp;
200./configure --prefix=/usr \
201 --docdir=/usr/share/doc/graphviz-&graphviz-version;</userinput></screen>
202
203 <note>
204 <para>
205 A warning is generated by <command>autogen.sh</command> because the
206 build tree is not a git repository. As a result, the build date is set
207 to 0. To get a meaningful date in the version string, you can run:
208 </para>
209
210<screen><userinput>sed -i "s/0/$(date +%Y%m%d)/" builddate.h</userinput></screen>
211 </note>
212
213 <para>
214 Whether or not you fix the date, proceed to compile the package:
215 </para>
216
217<screen><userinput>make</userinput></screen>
218
219 <para>
220 This package does not come with a test suite that provides
221 meaningful results.
222 </para>
223
224 <para>
225 Now, as the <systemitem class="username">root</systemitem> user:
226 </para>
227
228<screen role="root"><userinput>make install</userinput></screen>
229
230 </sect2>
231
232 <sect2 role="commands">
233 <title>Command Explanations</title>
234
235 <para>
236 <command>sed ... configure.ac</command>: This command is needed to
237 avoid installing files in /usr/lib64.
238 </para>
239
240 <para>
241 <option>--with-javaincludedir="$JAVA_HOME/include
242 -I$JAVA_HOME/include/linux"</option>:
243 If you have built <xref linkend="openjdk"/> in /opt, and you want to
244 build the JAVA bindings, it is necessary to specify the location of the
245 JAVA header files to configure. The configure switch is designed for
246 only one directory, but two directories need to be included.
247 This is possible nevertheless by using the -I switch inside the variable.
248 </para>
249
250 <para>
251 <option>--with-webp</option>: Even if <xref linkend="libwebp"/> is
252 installed, it is not included in the build without this option.
253 </para>
254
255 <para>
256 <option>--with-smyrna</option>: Even if the needed dependencies are
257 installed, the interactive graph viewer <command>smyrna</command> is not
258 built without this option.
259 </para>
260
261 </sect2>
262
263 <sect2 role="configuration">
264 <title>Configuring Graphviz</title>
265
266 <sect3 id="graphviz-config">
267 <title>Config Files</title>
268
269 <para>
270 <filename>/usr/lib/graphviz/config</filename>
271 </para>
272
273 <indexterm zone="graphviz graphviz-config">
274 <primary sortas="e-usr-share-graphviz-config">/usr/share/graphviz/config</primary>
275 </indexterm>
276
277 </sect3>
278
279 <sect3>
280 <title>Configuration Information</title>
281
282 <para>
283 There are no specific configuration requirements for
284 <application>Graphviz</application>. You may consider installing the
285 additional plugins and tools available from the download page at
286 <ulink url="https://graphviz.org/download/source/"/> for additional
287 capabilities. If additional plugins are installed, you can run
288 <command>dot -c</command> (as the
289 <systemitem class="username">root</systemitem> user) to update the
290 <filename>config</filename> file in
291 <filename class="directory">/usr/lib/graphviz</filename>.
292 </para>
293
294 </sect3>
295
296 </sect2>
297
298 <sect2 role="content">
299 <title>Contents</title>
300
301 <segmentedlist>
302 <segtitle>Installed Programs</segtitle>
303 <segtitle>Installed Libraries</segtitle>
304 <segtitle>Installed Directories</segtitle>
305
306 <seglistitem>
307 <seg>
308 acyclic, bcomps, ccomps, circo, cluster, dijkstra,
309 dot, dot2gxl, dot_builtins, edgepaint, fdp, gc, gml2gv,
310 graphml2gv, gv2gml, gv2gxl, gvcolor, gvedit, gvgen, gvmap, gvmap.sh,
311 gvpack, gvpr, gxl2dot, gxl2gv, mm2gv, neato, nop,
312 osage, patchwork, prune, sccmap, sfdp, tred, twopi,
313 unflatten, and vimdot
314 </seg>
315 <seg>
316 libcdt.so, libcgraph.so, libgvc.so, libgvpr.so, liblab_gamut.so,
317 libpathplan.so, libxdot.so, and several plugins in /usr/lib/graphviz.
318 There are also several in subdirectories of
319 /usr/lib/{lua,perl5,php,python&python3-majorver;,tcl8.6}.
320 Unfortunately, some libraries are duplicated.
321 </seg>
322 <seg>
323 /usr/include/graphviz,
324 /usr/lib/graphviz,
325 /usr/lib/tcl8.6/graphviz,
326 /usr/share/doc/graphviz-&graphviz-version;, and
327 /usr/share/graphviz
328 </seg>
329 </seglistitem>
330 </segmentedlist>
331
332 <variablelist>
333 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
334 <?dbfo list-presentation="list"?>
335 <?dbhtml list-presentation="table"?>
336
337 <varlistentry id="acyclic">
338 <term><command>acyclic</command></term>
339 <listitem>
340 <para>
341 is a filter that takes a directed graph as input and outputs a
342 copy of the graph with sufficient edges reversed to make the
343 graph acyclic
344 </para>
345 <indexterm zone="graphviz acyclic">
346 <primary sortas="b-acyclic">acyclic</primary>
347 </indexterm>
348 </listitem>
349 </varlistentry>
350
351 <varlistentry id="bcomps">
352 <term><command>bcomps</command></term>
353 <listitem>
354 <para>
355 decomposes graphs into their biconnected components,
356 printing the components to standard output
357 </para>
358 <indexterm zone="graphviz bcomps">
359 <primary sortas="b-bcomps">bcomps</primary>
360 </indexterm>
361 </listitem>
362 </varlistentry>
363
364 <varlistentry id="ccomps">
365 <term><command>ccomps</command></term>
366 <listitem>
367 <para>
368 decomposes graphs into their connected components,
369 printing the components to standard output
370 </para>
371 <indexterm zone="graphviz ccomps">
372 <primary sortas="b-ccomps">ccomps</primary>
373 </indexterm>
374 </listitem>
375 </varlistentry>
376
377 <varlistentry id="circo">
378 <term><command>circo</command></term>
379 <listitem>
380 <para>
381 draws graphs using a circular layout
382 </para>
383 <indexterm zone="graphviz circo">
384 <primary sortas="b-circo">circo</primary>
385 </indexterm>
386 </listitem>
387 </varlistentry>
388
389 <varlistentry id="cluster">
390 <term><command>cluster</command></term>
391 <listitem>
392 <para>
393 takes a graph in DOT format as input, finds node clusters,
394 and then augments the graph with this information
395 </para>
396 <indexterm zone="graphviz cluster">
397 <primary sortas="b-cluster">cluster</primary>
398 </indexterm>
399 </listitem>
400 </varlistentry>
401
402 <varlistentry id="diffimg">
403 <term><command>diffimg</command></term>
404 <listitem>
405 <para>
406 (needs <ulink url="https://www.libgd.org/">GD Library</ulink>)
407 generates an image where each pixel is the
408 difference between the corresponding pixel in
409 each of the two source images
410 </para>
411 <indexterm zone="graphviz diffimg">
412 <primary sortas="b-diffimg">diffimg</primary>
413 </indexterm>
414 </listitem>
415 </varlistentry>
416
417 <varlistentry id="dijkstra">
418 <term><command>dijkstra</command></term>
419 <listitem>
420 <para>
421 reads a stream of graphs and for each computes the distance of
422 every node from sourcenode
423 </para>
424 <indexterm zone="graphviz dijkstra">
425 <primary sortas="b-dijkstra">dijkstra</primary>
426 </indexterm>
427 </listitem>
428 </varlistentry>
429
430 <varlistentry id="dot">
431 <term><command>dot</command></term>
432 <listitem>
433 <para>
434 draws directed graphs. It works well on DAGs and other graphs
435 that can be drawn as hierarchies. It reads attributed graph files and
436 writes drawings. By default, the output format dot is the input file
437 with layout coordinates appended
438 </para>
439 <indexterm zone="graphviz dot">
440 <primary sortas="b-dot">dot</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
444
445 <varlistentry id="dot2gxl">
446 <term><command>dot2gxl</command></term>
447 <listitem>
448 <para>
449 converts between graphs represented in GXL and in the DOT
450 language. Unless a conversion type is specified using a flag,
451 <command>gxl2dot</command> will deduce the type of conversion from
452 the suffix of the input file, a
453 <filename class="extension">.dot</filename> suffix causing a
454 conversion from DOT to GXL, and a
455 <filename class="extension">.gxl</filename> suffix causing a
456 conversion from GXL to DOT
457 </para>
458 <indexterm zone="graphviz dot2gxl">
459 <primary sortas="b-dot2gxl">dot2gxl</primary>
460 </indexterm>
461 </listitem>
462 </varlistentry>
463 <!--
464 <varlistentry id="dotty">
465 <term><command>dotty</command></term>
466 <listitem>
467 <para>
468 is a graph editor for the X Window System. It may be run as a
469 standalone editor, or as a front end for applications that use
470 graphs. It can control multiple windows viewing different graphs
471 </para>
472 <indexterm zone="graphviz dotty">
473 <primary sortas="b-dotty">dotty</primary>
474 </indexterm>
475 </listitem>
476 </varlistentry>
477 -->
478 <varlistentry id="edgepaint">
479 <term><command>edgepaint</command></term>
480 <listitem>
481 <para>
482 performs edge coloring to disambiguate crossing edges
483 </para>
484 <indexterm zone="graphviz edgepaint">
485 <primary sortas="b-edgepaint">edgepaint</primary>
486 </indexterm>
487 </listitem>
488 </varlistentry>
489
490 <varlistentry id="fdp">
491 <term><command>fdp</command></term>
492 <listitem>
493 <para>
494 draws undirected graphs using a <quote>spring</quote> model. It
495 relies on a force-directed approach in the spirit of Fruchterman
496 and Reingold
497 </para>
498 <indexterm zone="graphviz fdp">
499 <primary sortas="b-fdp">fdp</primary>
500 </indexterm>
501 </listitem>
502 </varlistentry>
503
504 <varlistentry id="gc-graphviz">
505 <term><command>gc</command></term>
506 <listitem>
507 <para>
508 is a graph analogue to <command>wc</command> in that it prints
509 to standard output the number of nodes, edges, connected components
510 or clusters contained in the input files. It also prints a total
511 count for all graphs if more than one graph is given
512 </para>
513 <indexterm zone="graphviz gc-graphviz">
514 <primary sortas="b-gc">gc</primary>
515 </indexterm>
516 </listitem>
517 </varlistentry>
518
519 <varlistentry id="gml2gv">
520 <term><command>gml2gv</command></term>
521 <listitem>
522 <para>
523 converts a graph specified in the GML format to
524 a graph in the GV (formerly DOT) format
525 </para>
526 <indexterm zone="graphviz gml2gv">
527 <primary sortas="b-gml2gv">gml2gv</primary>
528 </indexterm>
529 </listitem>
530 </varlistentry>
531
532 <varlistentry id="graphml2gv">
533 <term><command>graphml2gv</command></term>
534 <listitem>
535 <para>
536 converts a graph specified in the GRAPHML format to a graph in
537 the GV (formerly DOT) format
538 </para>
539 <indexterm zone="graphviz graphml2gv">
540 <primary sortas="b-graphml2gv">graphml2gv</primary>
541 </indexterm>
542 </listitem>
543 </varlistentry>
544
545 <varlistentry id="gv2gml">
546 <term><command>gv2gml</command></term>
547 <listitem>
548 <para>
549 converts a graph specified in the GV format to a graph in the GML format
550 </para>
551 <indexterm zone="graphviz gv2gml">
552 <primary sortas="b-gv2gml">gv2gml</primary>
553 </indexterm>
554 </listitem>
555 </varlistentry>
556
557 <varlistentry id="gv2gxl">
558 <term><command>gv2gxl</command></term>
559 <listitem>
560 <para>
561 converts a graph specified in the GV format to a graph in the GXL format
562 </para>
563 <indexterm zone="graphviz gv2gxl">
564 <primary sortas="b-gv2gxl">gv2gxl</primary>
565 </indexterm>
566 </listitem>
567 </varlistentry>
568
569 <varlistentry id="gvcolor">
570 <term><command>gvcolor</command></term>
571 <listitem>
572 <para>
573 is a filter that sets node colors from initial seed values.
574 Colors flow along edges from tail to head, and are averaged (as HSB
575 vectors) at nodes
576 </para>
577 <indexterm zone="graphviz gvcolor">
578 <primary sortas="b-gvcolor">gvcolor</primary>
579 </indexterm>
580 </listitem>
581 </varlistentry>
582
583 <varlistentry id="gvedit">
584 <term><command>gvedit</command></term>
585 <listitem>
586 <para>
587 provides a simple graph editor and viewer. It allows many
588 graphs to be viewed at the same time. The text of each
589 graph is displayed in its own text window
590 </para>
591 <indexterm zone="graphviz gvedit">
592 <primary sortas="b-gvedit">gvedit</primary>
593 </indexterm>
594 </listitem>
595 </varlistentry>
596
597 <varlistentry id="gvgen">
598 <term><command>gvgen</command></term>
599 <listitem>
600 <para>
601 generates a variety of simple, regularly-structured
602 abstract graphs
603 </para>
604 <indexterm zone="graphviz gvgen">
605 <primary sortas="b-gvgen">gvgen</primary>
606 </indexterm>
607 </listitem>
608 </varlistentry>
609
610 <varlistentry id="gvmap">
611 <term><command>gvmap</command></term>
612 <listitem>
613 <para>
614 takes as input a graph in DOT format, finds node
615 clusters and produces a rendering of the graph as
616 a geographic-style map, with clusters highlighted,
617 in xdot format
618 </para>
619 <indexterm zone="graphviz gvmap">
620 <primary sortas="b-gvmap">gvmap</primary>
621 </indexterm>
622 </listitem>
623 </varlistentry>
624
625 <varlistentry id="gvmap.sh">
626 <term><command>gvmap.sh</command></term>
627 <listitem>
628 <para>
629 is a pipeline for running gvmap
630 </para>
631 <indexterm zone="graphviz gvmap.sh">
632 <primary sortas="b-gvmap.sh">gvmap.sh</primary>
633 </indexterm>
634 </listitem>
635 </varlistentry>
636
637 <varlistentry id="gvpack">
638 <term><command>gvpack</command></term>
639 <listitem>
640 <para>
641 reads in a stream of graphs, combines the graphs into a single layout,
642 and produces a single graph serving as the union of the input graphs
643 </para>
644 <indexterm zone="graphviz gvpack">
645 <primary sortas="b-gvpack">gvpack</primary>
646 </indexterm>
647 </listitem>
648 </varlistentry>
649
650 <varlistentry id="gvpr">
651 <term><command>gvpr</command></term>
652 <listitem>
653 <para>
654 is a graph stream editor inspired by <command>awk</command>. It
655 copies input graphs to its output, possibly transforming their
656 structure and attributes, creating new graphs, or printing arbitrary
657 information
658 </para>
659 <indexterm zone="graphviz gvpr">
660 <primary sortas="b-gvpr">gvpr</primary>
661 </indexterm>
662 </listitem>
663 </varlistentry>
664
665 <varlistentry id="gxl2dot">
666 <term><command>gxl2dot</command></term>
667 <listitem>
668 <para>
669 converts between graphs represented in GXL and in the DOT
670 language. Unless a conversion type is specified using a flag,
671 <command>gxl2dot</command> will deduce the type of conversion from
672 the suffix of the input file, a
673 <filename class="extension">.dot</filename> suffix causing a
674 conversion from DOT to GXL, and a
675 <filename class="extension">.gxl</filename> suffix causing a
676 conversion from GXL to DOT
677 </para>
678 <indexterm zone="graphviz gxl2dot">
679 <primary sortas="b-gxl2dot">gxl2dot</primary>
680 </indexterm>
681 </listitem>
682 </varlistentry>
683
684 <varlistentry id="gxl2gv">
685 <term><command>gxl2gv</command></term>
686 <listitem>
687 <para>
688 converts between graphs represented in GXL and in
689 the GV language
690 </para>
691 <indexterm zone="graphviz gxl2gv">
692 <primary sortas="b-gxl2gv">gxl2gv</primary>
693 </indexterm>
694 </listitem>
695 </varlistentry>
696 <!--
697 <varlistentry id="lefty">
698 <term><command>lefty</command></term>
699 <listitem>
700 <para>
701 is a two-view graphics editor for technical pictures
702 </para>
703 <indexterm zone="graphviz lefty">
704 <primary sortas="b-lefty">lefty</primary>
705 </indexterm>
706 </listitem>
707 </varlistentry>
708
709 <varlistentry id="lneato">
710 <term><command>lneato</command></term>
711 <listitem>
712 <para>
713 is a graph editor for the X Window System. It may be run as a
714 standalone editor, or as a front end for applications that use
715 graphs. It can control multiple windows viewing different graphs
716 </para>
717 <indexterm zone="graphviz lneato">
718 <primary sortas="b-lneato">lneato</primary>
719 </indexterm>
720 </listitem>
721 </varlistentry>
722 -->
723 <varlistentry id="mm2gv">
724 <term><command>mm2gv</command></term>
725 <listitem>
726 <para>
727 converts a sparse matrix of the Matrix Market format
728 to a graph in the GV (formerly DOT) format
729 </para>
730 <indexterm zone="graphviz mm2gv">
731 <primary sortas="b-mm2gv">mm2gv</primary>
732 </indexterm>
733 </listitem>
734 </varlistentry>
735
736 <varlistentry id="neato">
737 <term><command>neato</command></term>
738 <listitem>
739 <para>
740 draws undirected graphs using <quote>spring</quote> models. Input
741 files must be formatted in the <command>dot</command> attributed
742 graph language. By default, the output of <command>neato</command>
743 is the input graph with layout coordinates appended
744 </para>
745 <indexterm zone="graphviz neato">
746 <primary sortas="b-neato">neato</primary>
747 </indexterm>
748 </listitem>
749 </varlistentry>
750
751 <varlistentry id="nop">
752 <term><command>nop</command></term>
753 <listitem>
754 <para>
755 reads a stream of graphs and prints each in pretty-printed (canonical)
756 format on stdout. If no files are given, it reads from stdin
757 </para>
758 <indexterm zone="graphviz nop">
759 <primary sortas="b-nop">nop</primary>
760 </indexterm>
761 </listitem>
762 </varlistentry>
763
764 <varlistentry id="osage">
765 <term><command>osage</command></term>
766 <listitem>
767 <para>
768 draws clustered graphs. It takes any graph in DOT format as input
769 </para>
770 <indexterm zone="graphviz osage">
771 <primary sortas="b-osage">osage</primary>
772 </indexterm>
773 </listitem>
774 </varlistentry>
775
776 <varlistentry id="patchwork">
777 <term><command>patchwork</command></term>
778 <listitem>
779 <para>
780 draws clustered graphs using a squarified treemap layout.
781 It takes any graph in DOT format as input
782 </para>
783 <indexterm zone="graphviz patchwork">
784 <primary sortas="b-patchwork">patchwork</primary>
785 </indexterm>
786 </listitem>
787 </varlistentry>
788
789 <varlistentry id="prune">
790 <term><command>prune</command></term>
791 <listitem>
792 <para>
793 reads directed graphs in the same format used by
794 <command>dot</command> and removes subgraphs rooted at nodes
795 specified on the command line via options
796 </para>
797 <indexterm zone="graphviz prune">
798 <primary sortas="b-prune">prune</primary>
799 </indexterm>
800 </listitem>
801 </varlistentry>
802
803 <varlistentry id="sccmap">
804 <term><command>sccmap</command></term>
805 <listitem>
806 <para>
807 decomposes digraphs into strongly connected components and an
808 auxiliary map of the relationship between components. In this map,
809 each component is collapsed into a node. The resulting graphs are
810 printed to stdout
811 </para>
812 <indexterm zone="graphviz sccmap">
813 <primary sortas="b-sccmap">sccmap</primary>
814 </indexterm>
815 </listitem>
816 </varlistentry>
817
818 <varlistentry id="sfdp">
819 <term><command>sfdp</command></term>
820 <listitem>
821 <para>
822 draws undirected graphs using the <quote>spring</quote> model,
823 but it uses a multi-scale approach to produce layouts of large
824 graphs in a reasonably short time
825 </para>
826 <indexterm zone="graphviz sfdp">
827 <primary sortas="b-sfdp">sfdp</primary>
828 </indexterm>
829 </listitem>
830 </varlistentry>
831
832 <varlistentry id="tred">
833 <term><command>tred</command></term>
834 <listitem>
835 <para>
836 computes the transitive reduction of directed graphs, and
837 prints the resulting graphs to standard output. This removes edges
838 implied by transitivity. Nodes and subgraphs are not otherwise
839 affected
840 </para>
841 <indexterm zone="graphviz tred">
842 <primary sortas="b-tred">tred</primary>
843 </indexterm>
844 </listitem>
845 </varlistentry>
846
847 <varlistentry id="twopi">
848 <term><command>twopi</command></term>
849 <listitem>
850 <para>
851 draws graphs using a radial layout. Basically, one node is
852 chosen as the center and put at the origin. The remaining nodes are
853 placed on a sequence of concentric circles centered about the origin,
854 each a fixed radial distance from the previous circle
855 </para>
856 <indexterm zone="graphviz twopi">
857 <primary sortas="b-twopi">twopi</primary>
858 </indexterm>
859 </listitem>
860 </varlistentry>
861
862 <varlistentry id="unflatten">
863 <term><command>unflatten</command></term>
864 <listitem>
865 <para>
866 is a preprocessor to <command>dot</command> that is used to
867 improve the aspect ratio of graphs having many leaves or disconnected
868 nodes. The usual layout for such a graph is generally very wide or tall
869 </para>
870 <indexterm zone="graphviz unflatten">
871 <primary sortas="b-unflatten">unflatten</primary>
872 </indexterm>
873 </listitem>
874 </varlistentry>
875
876 <varlistentry id="vimdot">
877 <term><command>vimdot</command></term>
878 <listitem>
879 <para>
880 is a simple script which launches the <command>gvim</command>
881 or <command>vim</command> editor along with a GUI window
882 showing the <command>dot</command> output of the edited file
883 </para>
884 <indexterm zone="graphviz vimdot">
885 <primary sortas="b-vimdot">vimdot</primary>
886 </indexterm>
887 </listitem>
888 </varlistentry>
889
890 <varlistentry id="libcdt">
891 <term><filename class="libraryfile">libcdt.so</filename></term>
892 <listitem>
893 <para>
894 manages run-time dictionaries using standard container data
895 types: unordered set/multiset, ordered set/multiset, list, stack,
896 and queue
897 </para>
898 <indexterm zone="graphviz libcdt">
899 <primary sortas="c-libcdt">libcdt.so</primary>
900 </indexterm>
901 </listitem>
902 </varlistentry>
903
904 <varlistentry id="libcgraph">
905 <term><filename class="libraryfile">libcgraph.so</filename></term>
906 <listitem>
907 <para>
908 supports graph programming by maintaining graphs in memory and
909 reading and writing graph files. Graphs are composed of nodes,
910 edges, and nested subgraphs
911 </para>
912 <indexterm zone="graphviz libcgraph">
913 <primary sortas="c-libcgraph">libcgraph.so</primary>
914 </indexterm>
915 </listitem>
916 </varlistentry>
917
918 <varlistentry id="libgvc">
919 <term><filename class="libraryfile">libgvc.so</filename></term>
920 <listitem>
921 <para>
922 provides a context for applications wishing to manipulate
923 and render graphs. It provides command line parsing interfaces,
924 common rendering code, and a plugin mechanism for renderers
925 </para>
926 <indexterm zone="graphviz libgvc">
927 <primary sortas="c-libgvc">libgvc.so</primary>
928 </indexterm>
929 </listitem>
930 </varlistentry>
931
932 <varlistentry id="libpathplan">
933 <term><filename class="libraryfile">libpathplan.so</filename></term>
934 <listitem>
935 <para>
936 contains functions to find the shortest path between two points
937 in a simple polygon
938 </para>
939 <indexterm zone="graphviz libpathplan">
940 <primary sortas="c-libpathplan">libpathplan.so</primary>
941 </indexterm>
942 </listitem>
943 </varlistentry>
944
945 <varlistentry id="libxdot">
946 <term><filename class="libraryfile">libxdot.so</filename></term>
947 <listitem>
948 <para>
949 provides support for parsing and deparsing graphical
950 operations specified by the xdot language
951 </para>
952 <indexterm zone="graphviz libxdot">
953 <primary sortas="c-libxdot">libxdot.so</primary>
954 </indexterm>
955 </listitem>
956 </varlistentry>
957
958 </variablelist>
959
960 </sect2>
961
962</sect1>
Note: See TracBrowser for help on using the repository browser.