Graphviz for dynamic generation of diagrams


Graphviz logo

This is a plugin that allows the dynamic generation of diagrams by Graphviz programs within wiki pages and ticket descriptions. Graphviz is open source graph visualization software library, which itself is Eclipse licensed. Graphviz works by interpreting a textual description of the nodes and its connections.

The text of a wiki page can contain the source text for Graphviz and the web browser will show the resulting image. For example, add the following lines to a wiki page:

digraph G {Hello->World->Graphviz->Rules}

and that would produce an image as follows:

Sample outout from the graphviz plugin, produced with graphviz-2.20.3 with pangocairo support

Note that you can insert TracLinks like this:

  digraph G {
    rankdir = "LR"
    GraphvizPlugin [ URL=GraphvizPlugin ]
    Trac [ 
    GraphvizPlugin -> Trac

This produces an image like this, but with clickable nodes (note that nodes aren't actually clickable in this example):

second example, this time with colour and TracLinks, also produced with graphviz-2.20.3 on Linux

More examples at:

A plugin with simpler syntax and Javascript based is MermaidMacro.

Bugs/Feature Requests

Existing bugs and feature requests for GraphvizPlugin are here.

If you have any issues, create a new ticket.

When creating a new ticket, be sure to mention which version of Trac and which version of the plugin you are using. If the version number ends with dev, then please also specify the changeset number that corresponds to the version you are using.


70 / 90


23 / 33


1 / 1


Or you can download the zipped source from here. Note that this contains everything regarding the Graphviz plugin including tagged releases and branches.

The plugin is also available on PyPI.


You can check out GraphvizPlugin from here using Subversion, or browse the source with Trac.


  1. A prerequisite for installation are the programs from, which do not come with this plugin.
  2. Install in one of the following ways:
    • By hand:
      1. See graphvizplugin/trunk/README.rst for details on installing the plugin for Trac 1.3 and up
      2. See graphvizplugin/branches/1.2/README.txt for details on installing the plugin for Trac 1.0 and up
      3. See graphvizplugin/tags/0.11-0.7.5/README.txt for details on installing the plugin on Trac 0.11 and Trac 0.12.
    • Using pip install for Trac 1.3+:
      [sudo] pip install svn+
    • Using pip install for Trac 1.0 and 1.2:
      [sudo] pip install svn+
    • Using easy_install for Trac 0.11 and 0.12:
      [sudo] easy_install
    • Note: sudo is optional and in case you already have authorization to modify your server.
  3. Restart your web server, for example this Apache command on Ubuntu:
    [sudo] /etc/init.d/apache2 restart
  4. Enable the plugin:
    • by updating your trac.ini with this:
      graphviz.* = enabled
    • or accessing your Admin panel ( ..admin/general/plugins ).
  5. Configure your environment by modifying your trac.ini file.

You may also need to install the python-pygraphviz package.

Recent Changes

18539 by jun66j5 on 2023-04-07 00:08:42
TracGraphviz Prepare for development
18538 by jun66j5 on 2023-04-07 00:02:57
TracGraphviz Prepare for release
18525 by jun66j5 on 2023-03-19 14:22:48
Make compatible with Trac 1.5.4 and Python 3, and remove Genshi from dependencies (closes #14173)


Author: pkropf
Maintainer: Christian Boos
Contributors: cboos

Last modified 14 months ago Last modified on Feb 15, 2023, 6:02:30 PM

Attachments (6)

Download all attachments as: .zip