140 likes | 376 Views
A Free Java Library for TreeMap Visualization. Christophe Bouthier Ph.D. Student ECOO team LORIA, France. Plan of the presentation. Use case : states treemap The Java TreeMap Library Planned evolution. Use case : states treemap The Java TreeMap Library Planned evolution.
E N D
A Free Java Library for TreeMap Visualization Christophe Bouthier Ph.D. Student ECOO team LORIA, France
Plan of the presentation • Use case : states treemap • The Java TreeMap Library • Planned evolution • Use case : states treemap • The Java TreeMap Library • Planned evolution • Use case : states treemap • The Java TreeMap Library • Planned evolution • Use case : states treemap • The Java TreeMap Library • Planned evolution • Use case : states treemap • The Java TreeMap Library • Planned evolution Christophe.Bouthier@loria.fr
Use case • The library • Futur A Treemap usage • Motu project • Research prototype (http://motu.sf.net/) • Accepted paper to CRIWG 2001 • Classic CSCW scenario : • version management in a design project • Treemaps : • files states visualization • « workspace awareness » (Gutwin & Greenberg) Christophe.Bouthier@loria.fr
Repository V3 V3 V4 V2 V2 V3 V4 • Use case • The library • Futur Copy-Modify-Merge V1 V2 Workspace User A Workspace User B Christophe.Bouthier@loria.fr
Use case • The library • Futur Files states : Nothing to do : You have modified this file : Somebody else is modifying this file : You and somebody else have modified this file : A new version is on the server : … and you have modified this file • Up-to-date • Locally modified • Remotely modified • Potentially conflict • Need update • Will conflict Christophe.Bouthier@loria.fr
F1 F1 V2 V3 F2 V2 • Up-to-date • Locally modified • Remotely modified • Potentially conflict • Need update • Will conflict Commit F2 Edit F2 Commit F1 Edit F1 Update F1 Update F2 Commit F1 Update F1 Edit F1 Workspace User A Workspace User B V3 V3 V3 V2 V2 V2 V2 V2 V2 • Use case • The library • Futur States Treemap : example Repository F1 V1 F2 V1 F1 F2 F1 F2 V1 V1 V1 V1 Christophe.Bouthier@loria.fr
Use case • The library • Futur Why a treemap library ? • Existing treemaps are : • standalone applications • specialized for specific task Unreusable • If you want treemaps in your project : • existing treemaps could not be reused • you should reimplement treemaps from scratch Need of a «TreeMap Visualization» toolkit ! Christophe.Bouthier@loria.fr
Use case • The library • Futur Treemap widget • Ready to be used • Can be combined with other widgets • Dynamic multi-threaded update : • if data changed • if data added or removed • Really fast, even for several thousands of nodes • Free (MIT license) Christophe.Bouthier@loria.fr
Use case • The library • Futur Data representation • Programmer can specify algorithms : • in charge of nodes’ filling • in charge of nodes’ size • Algorithms can be changed dynamically • Filling could be : • a color • a pattern Christophe.Bouthier@loria.fr
Use case • The library • Futur Treemap representation • 2 orthogonal presentation properties : • treemap classic or nested • treemap classic or squarified • a treemap can be nested AND squarified • Provided configuration view : • dynamic • property on/off • size of nested border Christophe.Bouthier@loria.fr
Use case • The library • Futur Code sample TMNode root; // root of the data tree // build internal structures TreeMap treemap = new TreeMap(root); TMComputeSize cs; // algorithm computing nodes’ size TMComputeDraw cd; // algorithm computing nodes’ filling // Get a treemap view widget TMView view = treemap.getView(cs, cd); Christophe.Bouthier@loria.fr
Use case • The library • Futur In the near futur... • To be added : • nodes attributes • every data will be acceded the same way • display of node name in the treemap • dynamic queries • on nodes attributes • user interaction • zoom • file selection Christophe.Bouthier@loria.fr
Use case • The library • Futur In the near futur... • Compatibility • Swing TreeModel • TreeMap 2000 file format • The Java TreeMap Library • http://sf.net/projects/treemap/ • http://treemap.sf.net/ Christophe.Bouthier@loria.fr