We'll create fresh WordPress site with TFO Graphviz installed. You have 20 minutes to test the plugin after that site we'll be deleted.
Graphviz is a powerful tool for visualizing network and tree structures that connect objects.
This WordPress plugin provides a shortcode mechanism to create Graphviz graphics within blogs, including image map generation and most other Graphviz features.
The shortcode syntax is:
[graphviz <options>]
<DOT code>
[/graphviz]
Where <options>
is anything from this list. All are entirely optional:
class="
<css_class>"
Adds an extra CSS class name (or names) to the img
tag of the rendered graph. This is in addition to the graphviz
class that is already applied.
emitjs="yes|no"
Override the global setting that controls whether JavaScript is emitted as necessary. Typically this JavaScript is only produced when rendering SVG output and is intended to ensure SVG images work on most browsers. However this can sometimes be undesirable and thus this option gives some control over this.
height="
<image_height>"
Adds a height
attribute to the image tags to enable control of the image rendering. This is useful for making sure the graphic fits into a certain space and works well for SVG rendered graphs.
href="self|
<URL>"
Encompasses the generated image with a link either to the image itself (with the self
value) or to the provided URL. If the option is empty (for example, href=""
) then no link is generated. This is the default.
id="
<id>"
Provides the identifier used to link the generated image to an image map. If you use the simple
option then it also provides the name of the generated DOT graph container (since Graphviz uses this to generate the image map). If not given then an identifier is generated with the form tfo_graphviz_N
where N is an integer that starts at one when the plugin is loaded and is incremented with use.
imap="yes|no"
Graphviz can generate image maps using any URL’s given in the DOT code so that clicking on objects in the resultant image will direct a web browser to a new page. The effect of this option is to both instruct Graphviz to generate a client-side image map and to also insert that map into the generated HTML. It will use the id
value as the name of the map (see the id
option for details). imap
defaults to no
.
Take note that the id
value specified in the shortcode tag must match the name of the graph inside your DOT; the HTML for the image map is generated by Graphviz using the name of the graph as the map id and name. This plugin uses the id
specified in the shortcode tag to link the image to the map and thus these values need to match.
For example, note that mymap
is both the id
and the graph name:
[graphviz imap="yes" title="This is my map" id="mymap"]
digraph mymap {
input[shape="box", style="rounded", label="My label", URL="/myurl"];
}
[/graphviz]
If you do not give the graph any name at all the results are undefined. Some versions of Graphviz use the string %3
as the identifier in the map but this may not be universally true.
lang="<dot|neato|twopi|circo|fdp>"
Specifies the particular Graphviz interpreter to use. The options are dot
, neato
, twopi
, circo
and fdp
. The default is dot
.
output="<png|gif|jpg|svg>"
Indicates the desired image format. Defaults to png
.
simple="yes|no"
The simple
option provides a very basic DOT wrapper around your code such that the following is possible:
[graphviz simple="yes"] a -> b -> c; [/graphviz]
The generated code would look like:
digraph tfo_graphviz_1 {
a -> b -> c;
}
See the id
option for a description of how the name of the digraph
is created. simple
defaults to no
.
title="
<title>"
Indicates the title of the image. This is used in the alt
and title
attributes of the image reference. This defaults to an empty string. Note that image maps may indicate a title
string which will appear in tool-tips.
width="
<image_width>"
Adds a width
attribute to the image tags to enable control of the image rendering. This is useful for making sure the graphic fits into a certain space and works well for SVG rendered graphs.
method="
<Graphviz|Graphlib_Dot|PHP>`”
Overrides the configured output generation method to use the one indicated. This is useful when the mechanism normally in use does not support a specific feature, or when developing new methods. Note that since this does not have the same tests that the settings page has it may fail in mysterious ways without letting you know that it did.
In particular, note that the Graphlib_Dot
method is very experimental at the moment.