Skip to main content

Plugins Documentation

Plug-ins Reference

Clustering


ConvolutionClustering

Description

This plugin allow the discretization and the filtering of the distribution of a node metric using convolution.

A detailled usage of this procedure is detailled in :

D. Auber, M. Delest and Y. Chiricota
"Strahler based graph clustering using convolution",
Published by the IEEE Computer Society,
2004.



HierarchicalClustering

Description



QuotientClustering

Description



StrengthClustering

Description

This plugin performs a single-linkage clustering. The similarity measure used here is the Strength Metric computed on edges. The best threshold is found using MQ Quality Measure. See :

Y. Chiricota, F. Jourdan and G. Melancon, G.
"Software components capture using graph clustering",
IEEE Computer Society,
2003.


Export


GMLExport

Description

Export plugin for GML format.

This plugin records a Tulip graph structure using the GML File format. This format is the file format used by Graphlet. See www.infosun.fmi.uni-passau.de/Graphlet/GML/ for details.


Glyph


Billboard

Description

A 2D glyph.

This glyph draws a textured square using the "viewTexture" node property value. If this property has no value, the square is then colored using the "viewColor" node property value. It is unsensitive to any axis rotation and so always remains displayed in the same position.



ChristmasTree

Description

A 3D glyph.

This glyph draws a christmas tree special for christmas release of 2008



Circle

Description

A 2D glyph.

This glyph draws a textured disc using the "viewTexture" node property value. If this property has no value, the disc is then colored using the "viewColor" node property value.



Cone

Description

A 3D glyph.

This glyph draws a textured cone using the "viewTexture" node property value. If this property has no value, the cone is then colored using the "viewColor" node property value.



Cross

Description

A 2D glyph.

This glyph draws a textured cross using the "viewTexture" node property value. If this property has no value, the cross is then colored using the "viewColor" node property value.



Cube

Description

A 3D glyph.

This glyph draws a textured cube using the "viewTexture" node property value. If this property has no value, the cube is then colored using the "viewColor" node property value.



CubeOutLinedTransparent

Description

A 3D glyph.

This glyph draws a transparent cube using the "viewBorderColor" node property value to draw its edges.



Diamond

Description

A 2D glyph.

This glyph draws a textured diamond using the "viewTexture" node property value. If this property has no value, the diamond is then colored using the "viewColor" node property value.



HalfCylinder

Description

A 3D glyph.

This glyph draws an textured a half cylinder - a cylinder whose height is half the one draws by the Cylinder glyph - using the "viewTexture" node property value. If this property has no value, the half cylinder is then colored using the "viewColor" node property value.



Hexagone

Description

A 2D glyph.

This glyph draws a textured hexagone using the "viewTexture" node property value. If this property has no value, the hexagone is then colored using the "viewColor" node property value.



Pentagone

Description

A 2D glyph.

This glyph draws a textured pentagone using the "viewTexture" node property value. If this property has no value, the pentagone is then colored using the "viewColor" node property value.



Ring

Description

A 2D glyph.

This glyph draws a textured disc with a circular hole using the "viewTexture" node property value. If this property has no value, the ring is then colored using the "viewColor" node property value.



RoundedBox

Description

A 2D glyph.

This glyph draws a rounded box, meaning a rectangle with rounded corners. The box is colored according to the "viewColor" property. It can also be outlined if "viewBorderWidth" is greater than zero. The outline is colored according to the "viewBorderColor" property. Last but not least, it can also be textured according to the "viewTexture" property.



Sphere

Description

A 3D glyph.

This glyph draws a textured sphere using the "viewTexture" node property value. If this property has no value, the sphere is then colored using the "viewColor" node property value.



Square

Description

A 2D glyph.

This glyph draws a textured square using the "viewTexture" node property value. If this property has no value, the square is then colored using the "viewColor" node property value.


Import


AdjacencyMatrixImport

Description

This plugin enables to import a graph coded with a matrix

File format:

The input format of this plugin is an ascii file where each line represents a row of the matrix. In each row, cells must be separated by a space.

Let M(i,j) be a cell of the matrix :

  • if i==j we define the value of a node.

  • if i!=j we define a directed edge between node[i] and node[j]

If M(i,j) is real value (0, .0, -1, -1.0), it is stored in the viewMetric property of the graph.
If M(i,j) is a string, it is stored in the viewLabel property of the graph.
Use & to set the viewMetric and viewLabel properties of a node or edge in the same time. If M(i,j) == @ an edge will be created without value
If M(i,j) == # no edge will be created between node[i] and node[j]

EXEMPLE 1 :
A
# B
# # C
Define a graph with 3 nodes (with labels A B C) and without edge.

EXEMPLE 2 :
A
@ B
@ @ C
Define a simple complete graph with 3 nodes (with labels A B C) and no label (or value) on its edges

EXEMPLE 3 :
A # E & 5
@ B
# @ C
Define a graph with 3 nodes and 3 edges, the edge between A and C is named E and has the value 5



CompleteTree

Description

Complete Tree - Import of a complete tree.

This plugin enables to create a complete tree

User can specify the depth and the degree of the tree.



DotImport

Description

This plugin enables to import a graph coded with in dot format

File format: [ http://www.research.att.com/sw/tools/graphviz/ ]

First (quick) support of the AT&T DOT language

  • main graph entities are extracted (node/edges)

  • subgraphs are not already supported

  • several attributes (node & edge) are supported

  • based on a modified grammar file available with the graphviz software

  • this parser can be largely optimized ...



FileSystem

Description

Import a tree representation of a file system directory.

This plugin enables to capture in a tree the full hierarchy of of a given file system directory



GMLImport

Description

Import plugin for GML format.

This plugin imports a graph structure recorded using the GML File format. This format is the file format used by Graphlet. See www.infosun.fmi.uni-passau.de/Graphlet/GML/ for details.



Grid

Description

Grid - Import a grid.

This plugin enables to create a grid.

User can specify the connectivity of each nodes in the grid, spacing between nodes and if opposite nodes are connected.



PlanarGraph

Description

Planar Graph - Import of planer graph.

This plugin enables to create a planar graph

User can specify the number of nodes.



RandomGraph

Description

Random Graph - Import of a random graph.

This plugin enables to create a random graph

User can specify the number of nodes and the number of edges of the graph.



RandomSimpleGraph

Description

Random Simple Graph - Import of a random simple graph.

This plugin enables to create a random simple graph

User can specify the number of nodes and the number of edges of the graph.



RandomTree

Description

Random Tree - Import of a random tree.

This plugin enables to create a random tree

User can specify the minimal/maximal numbers of nodes used to build of the tree.



RandomTreeGeneral

Description

Random General Tree - Import of a random general tree.

This plugin enables to create a random general tree

User can specify the minimal/maximal number of nodes and the maximal degree.



SmallWorldGraph

Description

Grid Approximation - Import of a grid approximation.

This plugin enables to create a gride approximation

User can specify the number of nodes and their average degree.


Layout


BubbleTree

Description

This plug-in implement the bubble tree drawing algorithm first published as:

Bubble Tree Drawing Algorithm :
D. Auber and S. Grivet and J-P Domenger and Guy Melancon,
In International Conference on Computer Vision and Graphics, pages 633-641, september 2004.

HISTORY

  • 07/12/04 Version 0.0.3: Use new Tulip plugin parameter mechanism

  • 16/07/03 Version 0.0.2: Better management of node size

  • 16/05/03 Version 0.0.1: Initial release

NOTES

This algorithm only works on trees. Let n be the number of nodes, the algorithm complexity is in O(n) or O(nlog(n)), By default O(nlog(n)) algorithm is used, but one can choose the complexity by using the argument (bool)"complexity" (true means O(nlog(n), false O(n)). The algorithm can manage nodes of different size. The SizeProperty "viewSize" is used by default if no parameters are given to the plug-in. The parameter is (SizeProperty*) "node size".

AUTHORS

David Auber, S. Grivet University Bordeaux I France: auber@tulip-software.org , grivet@labri.fr



Circular

Description

This plugin is an implementation of a circular layout that takes node size into account. It manages size of nodes and use a standard dfs for ordering nodes or search the maximum length cycle.

HISTORY:

25/11/2004 version 0.0.2: size and order 01/12/1999 Version 0.0.1: Initial release

NOTES:

This work on general graphs. Let n be the number of nodes, the algorithm complexity is in O(n). If the search_cycle is enabled, the complexity is exponential (NP-Complete problem !).

AUTHORS:

David Auber and Romain Bourqui University Bordeaux I France: Email: auber@tulip-software.org Daniel Archambault The University of British Columbia: Email: archam@cs.ubc.ca



ConeTreeExtended

Description

ConeTreeExtended.h - An implementation of the cone tree layout.

This plugin is an extension of the Cone tree layout algorithm first published as:

A. FJ. Carriere and R. Kazman,
"Interacting with Huge Hierarchies: Beyond Cone Trees",
In Proceedings of InfoViz'95,
IEEE Symposium on Information Visualization
pages 74-78, 1995,

Information about the extension can be found in :

D.Auber, PhD Thesis, "Outils de visualisation de larges structures de donnees", University Bordeaux, december 2002.

HISTORY

  • 01/04/99 Verson 0.0.1: Initial release

NOTES

This algorithm only works on trees. Let n be the number of nodes, the algorithm complexity is in O(n).

AUTHORS

David Auber University Bordeaux I France: Email: auber@tulip-software.org



Dendrogram

Description

This plugin is an implementation of a dendrogram, an extended implementation of a "Bio representation" which includes variable orientation and variable node sizelayout.

NOTES

This works on tree. Let n be the number of nodes, the algorithm complexity is in O(n).

AUTHORS

Julien Testut, Antony Durand, Pascal Ollier, Yashvin Nababsing,
Sebastien Leclerc, Thibault Ruchon, Eric Dauchier
University Bordeaux I France



GEMLayout

Description

An implementation of a spring-embedder layout.

This plugin is an implementation of the GEM-2d layout algorithm first published as:

A. Frick, A. Ludwig, and H. Mehldau,
"A fast, adaptive layout algorithm for undirected graphs",
In R. Tamassia and I. Tollis (Eds),
Graph Drawing'94,
Volume 894 of Lecture Notes in Computer Science, Springer Verlag, 1995.

HISTORY

The implementation started life as the public-domain code produced by Arne Frick and released at

www.frick-consulting.de/publications.html

The core "embedder" part of the algorithm was used in the implementation of a Java plugin for the CWI "Royere" tool, and then this code was ported to C++ to make the implementation given here.

NOTES

The embedder algorithm described by Frick involves three phases: insertion, arrangement, and optimization. Only the first two of these phases are included here. Experiments with the Java implementation showed that the optimization phase consumed significantly more time than the first two and produced apparently marginal improvements in the final layout.
As GEM, like other spring-embedder algorithms, is computationally expensive, I have tried to optimize the loops somewhat by storing all necessary node information into two arrays: "GemProp" carries the (scalar) values associated with each node by the layout algorithm, while "Adjacent" is an array of vectors, one vector per node, giving the index (integer) of each node.

The new version has been reimplemented to manage edge length it merges the 3D stuff and removes the use of integers (new CPU do not require it anymore).

AUTHORS

David Duke, University of Bath, UK: Email: D.Duke@bath.ac.uk

David Auber,University of Bordeaux, FR: Email: david.auber@labri.fr Version 0.1: 23 July 2001. Version 0.2: September 2006



HierarchicalGraph

Description

An implementation of hierarchical graph drawing algorithm.

This plugin is an implementation of the hierarchical layout algorithm first published as:

D. Auber,
"Tulip - A Huge Graph Visualization Framework",
"Book. Graph Drawing Software. (Ed. Michael Junger & Petra Mutzel",
"2004",
pages 105 - 126.



ImprovedWalker

Description

This plugin is an implementation of a linear Walker's algorithm:

Christoph Buchheim and Michael Junger and Sebastian Leipert, Improving Walker's Algorithm to Run in Linear Time citeseer.ist.psu.edu/buchheim02improving.html

NOTES

This algorith works on tree. Let n be the number of nodes, the algorithm complexity is in O(n).

AUTHORS

Julien Testut, Antony Durand, Pascal Ollier, Yashvin Nababsing,
Sebastien Leclerc, Thibault Ruchon, Eric Dauchier
University Bordeaux I France



MixedModel

Description

This plugin is an implementation of the planar polyline graph drawing algorithm, the mixed model algorithm, first published as:

C. Gutwenger and P. Mutzel,
"Planar Polyline Drawings with Good Angular Resolution",
"Lecture Notes In Computer Science, Vol. 1547"
"Proceedings of the 6th International Symposium on Graph Drawing,"
pages "167--182"
1998

Let n be the number of nodes, the original algorithm complexity is in O(n).
But the implementation of the canonical ordering has not been made in O(n).
This version of the algorithm considers each connected component of the graph, tests if it is planar or not. If not, it computes a planar subgraphs, which is a maximal planar "sub-map". Then an area aware version of Gutwenger and Mutzel 's algorithm is used, and if the connected component was not planar, it adds the "unplanar" edges in 3D. Finally, it uses the Connected Component Packing plugin of Tulip Software to pack the connected components.



OGDFCircular

Description

An implementation of the circular layout.

AUTHORS

Carsten Gutwenger

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFDavidsonHarel

Description

An implementation for DavidsonHarel layout.

This is the frontend for the DavidsonHarel optimization function. It adds the energy functions to the problem and sets their weights. It also contains functions for setting and returning the parameters that influence the quality of the solution and the speed of the optimization process.

AUTHORS

Rene Weiskircher

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFDominance

Description

An implementation of dominance layout algorithm.

AUTHORS

Hoi-Ming Wong and Carsten Gutwenger

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFFastMultipoleEmbedder

Description

Implementation of class FastMultipoleEmbedder.

AUTHORS

Martin Gronemann

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2009

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFFastMultipoleMultiLevelEmbedder

Description

Implementation of class FastMultipoleEmbedder.

AUTHORS

Martin Gronemann

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2009

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFFm3

Description

This is an implementation of Fast Multipole Multilevel Method (FM^3).

AUTHORS

Stefan Hachul

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2007

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFFrutchermanReingold

Description

Implementation of Spring-Embedder (Fruchterman,Reingold) algorithm with exact force computations.

AUTHORS

Carsten Gutwenger

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2009

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFGemFrick

Description

An implementations of the GEM Layout.

Fast force-directed layout algorithm ( GEMLayout ) based on Frick et al.'s algorithm

AUTHORS

Christoph Buchheim

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2007

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFKamadaKawai

Description

Implementation of Kamada-Kaway layout algorithm.

AUTHORS

Karsten Klein

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2009

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFMMMExampleFastLayout

Description

useable example of the Modular Multilevel Mixer

An example Layout using the Modular Mutlievel Mixer.

This example is tuned for speed. SolarMerger and SolarPlacer are used as merging and placement strategies. The FastMultipoleEmbedder is for force calculation.

AUTHORS

Gereon Bartel

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFMMMExampleNiceLayout

Description

useable example of the Modular Multilevel Mixer

This example is tuned for nice drawings for most types of graphs. EdgeCoverMerger and BarycenterPlacer are used as merging and placement strategies. The FastMultipoleEmbedder is for force calculation.

AUTHORS

Gereon Bartel

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFMMMExampleNoTwistLayout

Description

useable example of the Modular Multilevel Mixer

This example is tuned to reduce twists in the final drawing. Use this layout or a variation of it if many twists occur. LocalBiconnectedMerger and BarycenterPlacer are used as merging and placement strategies. The FastMultipoleEmbedder is for force calculation.

AUTHORS

Gereon Bartel

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFPlanarizationGrid

Description

Implements planarization with grid layout.

AUTHORS

Carsten Gutwenger

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFStressMajorization

Description

Implementation of stress-majorization layout algorithm.

AUTHORS

Karsten Klein

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2009

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFSugiyama

Description

Implementation of Sugiyama algorithm (classes Hierarchy, Level, SugiyamaLayout)

AUTHORS

Carsten Gutwenger

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFTree

Description

Linear time layout algorithm for trees (TreeLayout) based on Walker's algorithm

AUTHORS

Christoph Buchheim

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFUpwardPlanarization

Description

upward planarization layout algorithm.

AUTHORS

Hoi-Ming Wong

License:

This is part of the Open Graph Drawing Framework (OGDF). Copyright (C) 2005-2008

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



OGDFVisibility

Description

Implementation of visibility layout algorithm.

AUTHORS

Hoi-Ming Wong and Carsten Gutwenger

License:

This is part of the Open Graph Drawing Framework (OGDF).

Copyright (C). All rights reserved. See README.txt in the root directory of the OGDF installation for details.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation and appearing in the files LICENSE_GPL_v2.txt and LICENSE_GPL_v3.txt included in the packaging of this file.

In addition, as a special exception, you have permission to link this software with the libraries of the COIN-OR Osi project ( http://www.coin-or.org/projects/Osi.xml ), all libraries required by Osi, and all LP-solver libraries directly supported by the COIN-OR Osi project, and distribute executables, as long as you follow the requirements of the GNU General Public License in regard to all of the software in the executable aside from these third-party libraries.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

http://www.gnu.org/copyleft/gpl.html



SquarifiedTreeMap

Description

SquarifiedTreeMap.h - An implementation of a squarified treemap layout.

This plugin is an implementation of TreeMap and Squarified treemap layout.

Squarified Treemaps :
Bruls, M., Huizing, K., & van Wijk, J. J.
In Proc. of Joint Eurographics and IEEE TCVG Symp. on Visualization
(TCVG 2000) IEEE Press, pp. 33-42.

Shneiderman, B. (March 1991) Tree visualization with treemaps: a 2-d space-filling approach ACM Transactions on Graphics, vol. 11, 1 (Jan. 1992) 92-99. HCIL-91-03, CS-TR-2645, CAR-TR-548

NOTES

This algorith only works on tree.

VERSION

1.0.0 complete rewrite, merge treemap and squarified in the same algorithm simplify implementation. The algorithm can be tune to go 2 or 3 time faster however, since the algorithm is fast enough, the code is written to be easily read and maintain.

AUTHORS

Auber David

VERSION

0.0.0

AUTHORS

Julien Testut, Antony Durand, Pascal Ollier, Yashvin Nababsing,
Sebastien Leclerc, Thibault Ruchon, Eric Dauchier
University Bordeaux I France



TreeLeaf

Description

An implementation of a simple tree layout.

This plugin is an implementation of a simple tree layout. All leaves are placed at a distance one (x-coordinates) and the order is the one of a suffix ordering. The y coordinates is the depth in the tree. The other nodes are placed at the center of their children (x-coordinates), and the y-coordinate is their depth in the tree.

HISTORY

  • 01/12/99 Verson 0.0.1: Initial release

NOTES

Let n be the number of nodes, the algorithm complexity is in O(n).

AUTHORS

David Auber University Bordeaux I France: Email: auber@tulip-software.org



TreeRadial

Description

An implementation of a radial drawing of trees.

This algorithm is inspired from MoireGraphs: Radial Focus+Context Visualization and Interaction for Graphs with Visual Nodes from T. J. Jankun-Kelly, Kwan-Liu Ma published in IEEE Symposium on Information Visualization (2003)



TreeReingoldAndTilfordExtended

Description

This plugin is an implementation of the hierarchical tree layout algorithm first published as:

E.M. Reingold and J.S. Tilford,
"Tidier Drawings of Trees",
"IEEE Transactions on Software Engineering"
pages "223--228"
1981

NOTES

This algorithm only works on trees; so if the graph is not a tree it will be applied on a spanning tree.
Let n be the number of nodes, the algorithm complexity is in O(n).
It extends the original Reingold and Tilford by providing managment of different node size and different edge length.

The algorithm use the (Size)"viewSize" property for element size and the (int)"treeEdgeLength" for the edge length.



Tutte

Description

This plugin is an implementation of the Tutte layout for 3-Connected graph algorithm first published as:

W.T. Tutte , "How to Draw a Graph", "Proc. London Math. Soc.", "1963", pages 743-768.


Metric


BetweennessCentrality

Description

This plugin is an implementation of betweeness centrality parameter. (see http://en.wikipedia.org/wiki/Centrality#Betweenness_centrality for more details)

Algorithm published by:

U. Brandes,
"A Faster Algorithm for Betweenness Centrality",
"Journal of Mathematical Sociology"
"2001",
volume 25,
pages 163-177

The edge betweeness centrality is also computed, it is described in :

Newman, M. E. J. and Girvan, M.
"Finding and evaluating community structure in networks",
"Physics Reviews E",
"2004",
volume 69

NOTES

The complexity of the algorithm is O(|V| * |E|) in time HISTORY

  • 16/02/11 Version 1.2: Edge betweeness computation added

  • 08/02/11 Version 1.1: Normalisation option added

  • 03/01/05 Version 1.0: Initial release



BiconnectedComponent

Description

This plugin is an implementation of a biconnected component decomposition algorithm. It assigns the same value to all the edges in the same component.

NOTES

This algorithm assigns to each node a value defined as following : If two nodes are in the same connected component they have the same value else they have a different value.



ClusterMetric

Description

This plugin is an implementation of the Algorithm Parameter. algorithm published in :

Y. Chiricota. F.Jourdan, an G.Melancon
"Software component capture using graph clustering",
"IWPC",
2002.

Extended to unbounded depth (for the neigbors) :

NOTES

This algorithm works on general graphs. The algorithm use the parameter depth in order to determine the depth of the neighbors. If no depth is given, the plugins automatically popup a qt windows to ask the user for this parameter.



ConnectedComponent

Description

This plugin is an implementation of the connected component decompostion algorithm. each node and edge that belongs to the same component receive the same value.

NOTES

This algorithm assigns to each node a value defined as following : If two nodes are in the same connected component they have the same value else they have a different value.



DagLevelMetric

Description

This plugin is an implementation of a DAG layer decomposition

NOTES

This algorithm works on general DAG, the complexity is in O(|E|+|V|);



DegreeMetric

Description

This plugin compute the degree of each node

NOTES

This plug-in exists to obtain a uniform interface in the Tulip graph visualization software. To access to the degree of a node it is recommended to use directly the degree function available in each graph.



DepthMetric

Description

This plugins compute for each node n, the maximum path-length between n and the other node. The graph must be acyclic.

NOTES

This algorithm works on general graphs.



EccentricityMetric

Description

This plugin compute the eccentricity/closeness centrality of each node

Eccentricity is the maximum distance to go from a node to all others. In this version the Eccentricity value can be normalized (1 means that a node is one of the most eccentric in the network, 0 means that a node is on the centers of the network).

More information about the use of eccentricity metric can be found in :

Visone: Analysis and visualization of social networks.
"Book. Graph Drawing Software. (Ed. Michael Junger & Petra Mutzel",
Authors : Ulrik Brandes and Dorothea Wagner.
"2004",
pages 321-340.

Closeness Centrality is the mean of shortest-paths lengths from a node to others. The normalized values are computed using the reciprocal of the sum of these distances (see "http://en.wikipedia.org/wiki/Closeness_(graph_theory)#Closeness_centrality" for more details).

NOTES

The complexity of the algorithm is O(|V| * |E|) time and O(1) space.



IdMetric

Description

This plugins assigns id to nodes and edges. The ids are those used by tulip.



LeafMetric

Description

This plugin computes the number of leaves in the subtree induced by each node.

NOTES

This algorithm assigns to each node a value defined as following : If two nodes are in the same connected component they have the same value else they have a different value.



NodeMetric

Description

This plugin computes the number of nodes in the subtree induced by each node.

NOTES

This algorithm assigns to each node a value defined as following : If two nodes are in the same connected component they have the same value else they have a different value.



RandomMetric

Description

This plugins assigns random values to nodes and edges. the values are between 0 and 1.



StrahlerMetric

Description

This plugin is an implementation of the Strahler Parameter. algorithm first published as:

A.N. Strahler ,
"Hypsomic analysis of erosional topography",
"Bulletin Geological Society of America 63,pages 1117-1142.",
1952.

Extended to graphs in :

D. Auber,
Using Strahler numbers for real time visual exploration of huge graphs,
ICCVG, International Conference on Computer Vision and Graphics,
pages 56-69,
2002, September.

NOTES

This algorithm works on general graphs, if no node is selected, the algorithm automatically choose the nodes with higher outdegree as starting nodes.

The algorithm use the (bool)"viewSelection" property to determine the starting nodes.



StrengthMetric

Description

This plugin is an implementation of the Strength Parameter. algorithm first published in :

Y. Chiricota. F.Jourdan, and G.Melancon
"Software component capture using graph clustering",
"IWPC",
2002.


Selection


InducedSubGraphSelection

Description

This selection plugins enables to find a subgraph induced by a set of nodes.

Let V' a subset of nodes, G' is an induced subgraph of G if all edges (and only these ones) element of G that link two nodes (only one in case of loop) of V' are in G'.

AUTHORS

David Auber, LaBRI University Bordeaux I France: auber@tulip-software.org



Kruskal

Description

This selection plugins implements the so called Kruskal algorithm. This algorithm enables to find a minimum spanning tree in a connected graph.

This selection plugins enables to find all nodes and edges at a fixed distance of a set of nodes.

This only works on undirected graphs, (ie. the orientation of edges is omitted).

It takes one parameter :

  • DoubleProperty edge weight, this parameter defines the weight of each edge in the graph.

AUTHORS

Anthony Don, LaBRI University Bordeaux I France:



LoopSelection

Description

This selection plugins enables to find loops in a graph A loop is an edge that has the same source and target.

AUTHORS

David Auber, LaBRI University Bordeaux I France: auber@tulip-software.org



MultipleEdgeSelection

Description

This selection plugins enables to find the multiple-edges and parallel-edges in a graph. Let e1, e2 two edges, e1 and e2 are parallel edges if source(e1)=source(e2) and target(e1) = target(e2). If it exists n edges between two nodes, only n-1 edges will be selected.

AUTHORS

David Auber, LaBRI University Bordeaux I France: auber@tulip-software.org



ReachableSubGraphSelection

Description

This selection plugin enables to find all nodes and edges at a fixed distance of a set of nodes. It takes three parameters :

  • int distance

  • int direction : 0 means directed, 1 reverse directed, 2 undirected

  • BooleanProperty * startingnodes : the selected nodes of this BooleanProperty (those whose associated value is true) will be used as starting nodes.

AUTHORS

David Auber, LaBRI University Bordeaux I France: auber@tulip-software.org



SpanningDagSelection

Description

This selection plugins enables to find a subgraph of G that is acyclic.

AUTHORS

David Auber, LaBRI University Bordeaux I France: auber@tulip-software.org



SpanningTreeSelection

Description

This selection plugins enables to find a subgraph of G that is a forest (a set of trees).

AUTHORS

David Auber, LaBRI University Bordeaux I France: auber@tulip-software.org


Size


AutoSize

Description

AutoSize.cpp - Compute size in order to prevent node-node overlapping.

This plug-ins compute size of nodes and edges such that, node-node overlapping do not exists (if it is possible). and sizes of edges are proportional to size of nodes.

AUTHORS

David Auber University Bordeaux I France: Email: auber@tulip-software.org



FitToLabel

Description

FitToLabel.cpp - Compute size of elements according to the size of the displayed label.

version 1.0.0 : Tulip Team, Complete rewrite initial version : Sebastien Carceles, Pascal Niotout, Sophie Bardet, Julien Mercadal, Bertrand Ng Sing Kwong

AUTHORS

Maintainer : David Auber University Bordeaux I France: Email: auber@tulip-software.org



MetricSizeMapping

Description

Metric Mapping - Compute size of elements according to a metric.

This plugin enables to set the size of the graph's elements according to a metric.

AUTHORS

David Auber University Bordeaux I France: Email: auber@tulip-software.org