source: general/genutils/graphviz.xml@ 91378ee

10.1 11.0 ken/refactor-virt lazarus qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 91378ee was 91378ee, checked in by Pierre Labastie <pieere@…>, 9 months ago

Disable php for graphviz as php 8 is not supported

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@24116 af4574ff-66df-0310-9fd7-8a98e5e911e0

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