source: general/genutils/graphviz.xml@ ea36f0f

gimp3 trunk xry111/for-12.3 xry111/spidermonkey128
Last change on this file since ea36f0f was ac5428a, checked in by Xi Ruoyao <xry111@…>, 4 months ago

graphviz: Remove duplicated decl of "aghtmlstr" causing some vala tests fail

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