CCVisu is a lightweight tool that reads and writes data using simple text formats (cf. pipes-and-filters architecture). It is written in Java, and should be usable on all platforms. The tool is designed as a framework, easy to use, and easy to integrate into existing re-engineering environments; several formats for data interchange are already implemented. CCVisu provides a command-line interface as well as a GUI. The graph layout is currently provided in VRML format, in SVG format, in a standard text format, or directly drawn on the screen.
Download the current release from the CCVisu web page at http://ccvisu.sosy-lab.org. Start the program from the command line using java -jar CCVisu-3.0.jar or via double-click on the jar file in a file browser. If no parameters are given, a GUI is started that asks for the parameter. Option -h prints a list of available options. Alternatively, pull the sources from the repository or unpack the zip archive, and compile the Java sources; the package contains a Makefile. It is a good idea to set the CLASSPATH variable of your shell to the directory bin, which contains the Java byte-code files after successful compilation. If you do not want to set your CLASSPATH variable globally, you can use the file setup.sh (generated by make setup) to set the variables in the current shell: source setup.sh. This also sets the PATH variable to the CCVisu directory, to enable the use of the shell wrappers ccvisu.sh and disp.sh to abbreviate the command line a bit (invocation of the Java virtual machine).
Usage: java ccvisu.CCVisu [OPTION]... Compute a layout for a given (co-change) graph (or convert). Options: General options: -h --help display this help message and exit (current value: true). -v --version print version information and exit (current value: false). -q --quiet quiet mode (current value: false). -w --warnings enable warnings (current value: false). -verbose verbose mode (current value: false). -a --assertCheck check if assertions are enabled (current value: false). -g --guiMode GUI mode (provides a window to set options) (current value: false). -inputName <str> read input data from given file <str> (current value: 'stdin'). -outputName <str> write output data to given file <str> (current value: 'stdout'). -inFormat FORMAT read input data in format FORMAT (default: RSF, see below). -outFormat FORMAT write output data in format FORMAT (default: DISP, see below). Layouting options: -dim <int> number of dimensions of the layout, up to 3 (current value: 2). -iter <int> number of iterations of the minimizer; choose appropriate values by observing the convergence of energy (current value: 100). -initLayout <str> use layout (LAY format) from file <str> as initial layout (current value: ''). -fixedInitPos fix positions for vertices from initial layout given by -initLayout (current value: false). Energy model options: -attrExp <int> exponent for the distance in the attraction term (default: 1). -repuExp <int> specifies that <int> is applied as exponent to the distance in the repulsion term (if <int> != 0) or that log is applied to the distance (if <int> = 0) (default: 0). -vertRepu use vertex repulsion instead of edge repulsion (default: edge repulsion). -noWeight use unweighted model (default: weighted). -grav <float> gravitation factor for the Barnes-Hut-procedure (default: 0.001). DOX reader option: -relSelect <rel> selects a relation for visualization (default: REFFILE). CVS reader options: -timeWindow <int> time window for change transaction recovery, in milli-seconds (current value: 180000). -slidingTW use sliding time windows instead of fixed time window, i.e., the time window 'slides': a new commit node is created if the time difference between two commited files is bigger than the time window (current value: false). Layout writer options: -hideSource draw only vertices that are not source of an edge. In co-change graphs, all change-transaction vertices are source vertices (current value: false). -minVert <float> size of the smallest vertex disc; diameter (current value: 2.0). -fontSize <int> font size of vertex annotations (current value: 14). -backColor COLOR background color (default: WHITE). Colors: BLACK, GRAY, LIGHTGRAY, WHITE. -noBlackCircle no black circle around each vertex (default: with). -ringColor <str> Color of the ring around the vertex discs (current value: 'GRAY'). -depDegreeColor Color of the vertex disc determined by dep-degree (current value: false). -showEdges show the edges of the graph; available only for CVS and RFS inFomat (current value: false). -scalePos <float> scaling factor for the layout to adjust; VRML and SVG only (current value: 1.0). -noAnim layout not shown while minimizer is still improving it (default: show). -annotAll annotate each vertex with its name (current value: false). -annotNone annotate no vertex (current value: false). -shortNames shorten vertex labels (current value: false). -dispFilter show extra controls for display filter (current value: false). -initGroups <str> assign vertices to groups (and colors) according to file <str> (cf. file marker_script.example.txt as example) (current value: ''). -openURL the vertex names can be considered as URL and opened in a web broswer. This option used with DISP output requires to hold CTRL KEY while clicking (current value: false). DISP specific option -browser <str> browser <str> will be invoked; if empty, CCVisu will try to guess (current value: ''). Input Formats: RSF Graph (relation) in Relational Standard Format (RSF). LAY Graph layout in textual format. CVS CVS log format (produce with 'cvs log -Nb'). SVN SVN log format (produce with 'svn log -v --xml'). DOX Doxygen XML dump format (produce with 'doxygen'). ODS ODS Spreadsheet. AUX Graph is passed as data structure from a third-party client. Output Formats: RSF Graph (relation) in Relational Standard Format (RSF). LAY Graph layout in textual format. SVG Graph layout in SVG format. VRML Graph layout in VRML format. GRAPHML Graph in GraphML format. DISP Display graph layout on screen.© Dirk Beyer