---
name: "Graph::Writer::VCG"
section: "3pm"
platform: "linux"
package: "libgraph-readwrite-perl"
version: "2.10-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Graph::Writer::VCG"
---

# Graph::Writer::VCG(3pm)

write out directed graph in VCG format

## NAME

Graph::Writer::VCG - write out directed graph in VCG format

## SYNOPSIS

```
  use Graph;
  use Graph::Writer::VCG;
  $graph = Graph->new();
  # add edges and nodes to the graph
  $writer = Graph::Writer::VCG->new();
  $writer->write_graph($graph, 'mygraph.vcg');
```

## DESCRIPTION

**Graph::Writer::VCG** is a class for writing out a directed graph in the file format used by the *VCG* tool, originally developed for Visualising Compiler Graphs. The graph must be an instance of the Graph class, which is actually a set of classes developed by Jarkko Hietaniemi.

If you have defined any attributes for the graph, nodes, or edges, they will be written out to the file, as long as they are attributes understood by VCG.

## METHODS

### new()

Constructor - generate a new writer instance.

```
  $writer = Graph::Writer::VCG->new();
```

This doesn't take any arguments.

### write\_graph()

Write a specific graph to a named file:

```
  $writer->write_graph($graph, $file);
```

The `$file` argument can either be a filename, or a filehandle for a previously opened file.

## KNOWN BUGS AND LIMITATIONS

- •

  Attributes with non-atomic values aren't currently handled. This includes the **loc**, **classname**, **colorentry**, and **infoname** attributes for graphs, and the **loc** attribute for nodes,

- •

  Can currently only handle **graph**, **node**, and **edge** elements and their attributes. So doesn't know about **foldnode\_defaults** and things like that.

## SEE ALSO

- http://www.cs.uni-sb.de/RW/users/sander/html/gsvcg1.html

  The home page for VCG.

- Graph

  Jarkko Hietaniemi's modules for representing directed graphs, available from CPAN under modules/by-module/Graph/

- Algorithms in Perl

  The O'Reilly book which has a chapter on directed graphs, which is based around Jarkko's modules.

- Graph::Writer

  The base-class for Graph::Writer::VCG

## REPOSITORY

\<https://github.com/neilb/Graph-ReadWrite\>

## AUTHOR

Neil Bowers \<neil@bowers.com\>

## COPYRIGHT

Copyright (c) 2001-2012, Neil Bowers. All rights reserved. Copyright (c) 2001, Canon Research Centre Europe. All rights reserved.

This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
