workshop on « information visualization software infrastructure » auber david université bordeaux...
TRANSCRIPT
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
Tulip – A Huge Graph Visualization Framework
David AuberUniversity Bordeaux I
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgGeneral information
History• 2001 : v1.0.0 (GTL),
v1.1.0• 2002 : v1.2.0, v1.2.1,
v1.2.2• 2003 : v1.2.3, v1.2.4,
v1.2.5• 2004 : v2.0.0
Supports• European Project :
Temblor• NavGraphe : ACI Masse
de données• ACI jeunes chercheurs :
Interactive Data Cube Visualization
• LaBRI university
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgAcknowledgments
• Anthony Don
• Yann Dirson
• Chrys Myers
• Tamara Munzner
• Guy Melançon
• Ivan Herman
• Scott Marshall
• …
• Bertrand Mathieu
• Gérald Gainant
• Sophie Bardet
• David Duke
• Maylis Delest
• Jean Philippe Domenger
• Sébastien Grivet
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgDependencies
• GCC v3 (C++ Compiler)• QT library trolltech v3 (HCI)• STL Library (Data Structure)• Open GL Library (3D Rendering)• Xml2 Library (3D HTML rendering)
• GLE Library (3D Extrusion)• FTGL Library (3D Font Rendering)• GZ Library (Data Compression)
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgPublications
1. David Auber, "Tulip- A Huge Graph Visualization Framework", Graph Drawing Software, Springer-Verlag, Mathematics and Visualization series, P. Mutzel and M. Jünger, 105-126, 2003, ISBN: 3-540-00881-0
2. G. Gainant, D.Auber : " ARNA: Interactive Comparison And Alignement of RNA Structure ", Infoviz october 2004
3. M. Delest, T. Munzner, D. Auber, J.P. Domenger : "Exploring InfoVis Publication History with Tulip, IEEE Symposition on Information Visualisation Contest, 2004.
4. D.Auber and M.Delest : ``A Clustering Algorithm For Huge Trees'', Advance in applied mathematics journal 2002.
5. S. Grivet, D. Auber, J.P. Domenger, G. Melançon : "Bulble tree algorithm ", International conference in computer graphics and computer vision, september 2004.
6. D. Auber and M. Delest and J.M. Fédou and J.P. Domenger and P. Duchon : "New Strahler numbers for rooted plane trees", Third Colloquium on Mathematics and Computer Science Algorithms, Trees, Combinatorics and Probabilities September 2004, Vienna, Austria.
7. D. Auber and M. Delest and Y. Chiricota : "Strahler based graph clustering using convolution", IEEE, Information visualisation, London, 2004
8. D. Auber and Y. Chiricota and F. Jourdan and G. Melançon : "Multiscale Visualization of Small World Networks", IEEE Infovis'03, 2003, pages 75-81.
9. D. Auber and M. Delest and J.P. Domenger and P. Ferraro and R. Strandh : "EVAT : Environment for Visualization and Analysis of Trees", IEEE Symposition on Information Visualisation Contest, 2003, pages 124-126
10. D. Auber and F. Iragne and B. Mathieu and M. Nikolski and D. Sherman : "PROVIZ : Protein Interaction Visualization and Exploration Tool", ECCB '03, 2003
11. David Auber : ``Using Strahler numbers for real time visual exploration of huge graphs'', International Conference on Computer Vision and Graphics, 56-69, 2002.
12. David Auber : ``Tulip'', 9th Symp. Graph Drawing, GD 2001, Springer-Verlag, Petra Mutzel, Mickael Jünger, Sebastian Leipert, LNCS 2265, 335--337, Vienna.
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgOutline
1. A Library for Huge Graph
2. An extendable Framework for new algorithm
3. An increasing set of plug-in
4. An efficient and extendable OpenGl rendering engine
5. A reusable set of QT-widget for graph visualization
6. A graph visualization software
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
A Library for Huge Graph
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgGraph operations
• Insertion• Deletion• Edge Ordering• Neighbors iterations• Acyclic test• Connected test• Biconnectivity test• Tree test
• Node iterations
• Edge iterations
• Map iterations
• Directed access
• Undirected access
• Unbounded number of attributes (any type)
• Observable mechanism
• Planarity test (v2.0.2...)
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgProperties
Definition
• Function from V to TYPE
• Function from E to TYPE
• Unbounded numbers
• Efficient mutable storage
• Computed on the fly
• Buffered
• Stored
• Observable mechanism
Types– Real
– Integer
– Boolean
– String
– Graph
– Color
– Size
– Layout
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgHierarchy
• Management of sub-graph
• Unique space index• Elements are shared
between sub-graphs• Efficient storage using
filtering• Efficient access time• Coherence preserved by
the system during graph modification
Filter
Filter
Filter
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgInheritance of properties
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
An extendable Frameworkfor new algorithm
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgPlug-in mechanism
• Dynamically loaded• Plug-in type :
– Property :• Layout, color, size, label,
selection …
– Clustering– Import– Export
• Plug-in are all registered in the Tulip kernel
• Free access to all the data in all the plug-in (be careful)
• Plug-in can call other plug-in
• Easy to implement
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgPlug-in communication
• Default input/output for each plug-in type
• Special input/output can be specified for each plug-in
• Reflection mechanism to check dynamically input/output parameters of plug-ins.
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
An increasing set of plug-in
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgImport/Export plug-in
Import• Tulip format (tlp)
– Text format (lisp syntax), can be processed in one step. Enable saving of the data stored in the Tulip kernel.
• GML format (Graphlet)• DOT format (Graphviz)• Adjacency matrix• Random graph• Random tree• …
Export
• Tulip format (tlp)
• GML format (Graphlet)
• Pov Ray (for ray tracing)
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgLayout / Color plug-in
Layout• Bubble Tree • Cone Tree• Tree Map• RNA drawing• Hierarchical drawing• Circular drawing• GEM • ACE• Force directed• Scatter plots• …
Color• Uniform quantification
mapping
• Linear mapping
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgMetric / Selection plug-in
Metric• Strahler parameter• Strongly connected
component• Connected component• Strength• Eccentricity• Cluster index• Degree• …
Selection• Path
• Multi edge
• Loop
• Reachable sub-graph
• Induced sub-graph
• Spanning Tree
• Spanning DAG
• …
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgClustering Plug-in
• Strength clustering – Multiscale small world clustering
• Convolution clustering : – Interactive clustering based on convolution (efficient for Strahler
clustering)
• Statistical Tree clustering : – Statistical clustering based on combinatorial properties of trees
• Quotient graph
• …
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
An efficient and extendable OpenGl rendering engine
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org2D/3D Visualization
• Open GL rendering directly use the Tulip Properties– viewLayout– viewColor– viewSize– viewShape– viewTexture– viewRotation (v2.0.1)
• No cloning of data• Camera support• Texture buffer• Curve support :
– Spline– Bézier
• Guaranteed response time using incremental rendering
• Label visualization– Texture– Stroke– Bitmap– HTML (v2.0.1)
• Label density management• Label occlusion management• Support of True Type font• Selection mechanism• Encapsulated postscript, bitmap
image• Morphing (all visual attributes)• Color interpolation
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgGlyph support
Mechanism• Plug-in mechanism• Glyph can access to all
the data• Written in OpenGL• Can use directly
texture stored in the renderer
Available plug-in• Cube• Sphere• Billboard• Cone• Teapot• Cylinder• …
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgSamples
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
A reusable set of QT-widget for graph visualization
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgQT Widgets
Widgets– Graph visualization
– Hierarchy visualization
– Properties visualization
– Editor for algorithm parameter
Designer• Tulip plug-in• Easy building of new
software• Easy integration in
existing software
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgQT - Designer
Workshop on « Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
09/10/2004Workshop on
« Information visualization software infrastructure »
A graph visualization software
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgGeneral Interface
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgFeatures
• HCI : Dynamically built• Call of all available plug-in
– Plug-in parameter management
• MDI : Multi document interface• Cut / paste• Search (regexp, threshold
value)• Overview• 3D properties editor• 3D navigation : rotation, scale,
move• Zoom and Pan
• Zoom box• Import/ export• Properties visualization and
edition• Filtering• Hierarchy navigation• Hierarchy editing• MetaGraph exploration• Graph editing• Selection • Export : JPG, GIF, BMP …• …
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.org
DEMO
09/10/2004Workshop on
« Information visualization software infrastructure »
Auber David
Université Bordeaux I
ww
w.tu
lip-softw
are.orgWorkshop
• Meet the software architect of the Infovis community.
• Discuss about how performance, interaction and extension can be address simultaneously.
• Begin work about a standardized communication protocol that would enable all existing software :– To continue their way– To work together