SlideShare a Scribd company logo
1 of 39
Tree-Maps: A Space-FillingTree-Maps: A Space-Filling
Approach to the Visualization ofApproach to the Visualization of
Hierarchical Information StructuresHierarchical Information Structures
Presented by:Presented by:
Daniel Loewus-DeitchDaniel Loewus-Deitch
IntroductionIntroduction
Novel method for visualizing hierarchies.Novel method for visualizing hierarchies.
– Makes 100% use of available spaceMakes 100% use of available space
Maps the full hierarchy onto the screen inMaps the full hierarchy onto the screen in
a “space-filling manner.”a “space-filling manner.”
– Called Tree-MapsCalled Tree-Maps
Interactive ControlInteractive Control
– Allows users to specify presentation of bothAllows users to specify presentation of both
structural and content informationstructural and content information
IntroductionIntroduction
Sections of hierarchy with more importantSections of hierarchy with more important
information are allocated more display space.information are allocated more display space.
Collection of rectangular boxes represent theCollection of rectangular boxes represent the
tree structure.tree structure.
Best suited to hierarchies whereBest suited to hierarchies where
– The content of the leaf nodes and the structure of theThe content of the leaf nodes and the structure of the
hierarchy are most important.hierarchy are most important.
– The content information associated with internalThe content information associated with internal
nodes is largely derived from their children.nodes is largely derived from their children.
Main ObjectivesMain Objectives
Efficient space utilizationEfficient space utilization
InteractivityInteractivity
ComprehensionComprehension
EstheticsEsthetics
MotivationMotivation
(Problems with Current Methods)(Problems with Current Methods)
Traditional methods for displayingTraditional methods for displaying
hierarchies can be classified into 3hierarchies can be classified into 3
categories:categories:
– ListingsListings
– OutlinesOutlines
– Tree diagramsTree diagrams
ListingsListings
Can provide detailed content information.Can provide detailed content information.
Present structural information poorly.Present structural information poorly.
– Requires users to parse path information andRequires users to parse path information and
move manually through the hierarchy to get amove manually through the hierarchy to get a
real idea of its structure.real idea of its structure.
OutlinesOutlines
Can nicely provide both structural andCan nicely provide both structural and
content.content.
Structure can only be viewed a few linesStructure can only be viewed a few lines
at a time.at a time.
Inadequate for displaying a hierarchicalInadequate for displaying a hierarchical
structure with more than a few hundredstructure with more than a few hundred
nodes.nodes.
Tree DiagramsTree Diagrams
Excellent for small structures.Excellent for small structures.
Make poor use of available display space.Make poor use of available display space.
– Too much space used up for background.Too much space used up for background.
Little content information.Little content information.
– Presenting additional information clutters thePresenting additional information clutters the
display space.display space.
Why Tree-Maps are a goodWhy Tree-Maps are a good
alternativealternative
They use display space efficiently.They use display space efficiently.
Can provide structural informationCan provide structural information
implicitly.implicitly.
– Eliminates the need to draw internal nodes.Eliminates the need to draw internal nodes.
Provide an overall (global) view of theProvide an overall (global) view of the
entire hierarchy.entire hierarchy.
– Makes navigation and orientation easier.Makes navigation and orientation easier.
Provides creative visual cues toProvides creative visual cues to
communicate content information.communicate content information.
Presenting DirectoriesPresenting Directories
Problems with current methods:Problems with current methods:
– None provide a graphical representation ofNone provide a graphical representation of
the relative sizes of files or directories.the relative sizes of files or directories.
– Command line listings force user to pieceCommand line listings force user to piece
directory tree together manually.directory tree together manually.
– Windows obscure each other and require tooWindows obscure each other and require too
much effort to be arranged in any kind ofmuch effort to be arranged in any kind of
useful manner.useful manner.
– Icons only show the type of the file, but noIcons only show the type of the file, but no
other properties.other properties.
Presenting DirectoriesPresenting Directories
Origin of Tree-Maps conceptOrigin of Tree-Maps concept
– Venn diagramsVenn diagrams
– Tree diagramsTree diagrams
– Because these waste space, decided to useBecause these waste space, decided to use
boxes instead of ovals, along with a bin-boxes instead of ovals, along with a bin-
packing algorithm.packing algorithm.
– Worked well for small hierarchies only.Worked well for small hierarchies only.
Nesting caused problems.Nesting caused problems.
Presenting DirectoriesPresenting Directories
Origin of Tree-Maps conceptOrigin of Tree-Maps concept
– Discovered “slice and dice” method.Discovered “slice and dice” method.
Simple linear method (top-down).Simple linear method (top-down).
– Developed a weight-proportionate distribution.Developed a weight-proportionate distribution.
– Added a pop-up dialog window for detailedAdded a pop-up dialog window for detailed
content information.content information.
– Simple color mapping helps distinguishSimple color mapping helps distinguish
various properties of files, such as type andvarious properties of files, such as type and
size.size.
Tree Map MethodTree Map Method
Structural Information:Structural Information:
– Interactive approach gives user control overInteractive approach gives user control over
how tree is displayed.how tree is displayed.
– Requires that a weight be assigned to eachRequires that a weight be assigned to each
node, which determines the size of thatnode, which determines the size of that
node’s bounding box.node’s bounding box.
Tree Map MethodTree Map Method
Structural Information:Structural Information:
– There are some properties that always hold,There are some properties that always hold,
maintaining a consistent relationship betweenmaintaining a consistent relationship between
the structure of the hierarchy and its Tree-the structure of the hierarchy and its Tree-
Map representation (pg. 156).Map representation (pg. 156).
– Structural information is implicitly presented,Structural information is implicitly presented,
but can be nested to explicitly indicate.but can be nested to explicitly indicate.
– Non-nested display explicity provides directNon-nested display explicity provides direct
selection only for leaf nodes.selection only for leaf nodes.
Tree Map MethodTree Map Method
Content Information:Content Information:
– Variety of display properties determines howVariety of display properties determines how
the node is drawn.the node is drawn.
– Color is the most important property.Color is the most important property.
– Other properties include pitch of tone andOther properties include pitch of tone and
color saturation.color saturation.
– Pop-up display provides information about thePop-up display provides information about the
node currently under the cursor.node currently under the cursor.
Coping With SizeCoping With Size
Groups of small files can becomeGroups of small files can become
indistinguishable (completely blackindistinguishable (completely black
regions).regions).
Zooming in on these regions helps theZooming in on these regions helps the
local structure become clear.local structure become clear.
Future ResearchFuture Research
Exploration of alternate structuralExploration of alternate structural
partitioning schemes.partitioning schemes.
Appropriate visual display of both numericAppropriate visual display of both numeric
and non-numeric content information.and non-numeric content information.
Dynamic viewsDynamic views
– Animated time sliceAnimated time slice
Future ResearchFuture Research
Extended operationsExtended operations
– ZoomingZooming
– MarkingMarking
– SelectingSelecting
– SearchingSearching
Space-Filling SoftwareSpace-Filling Software
VisualizationVisualization
Presented by:Presented by:
Daniel Loewus-DeitchDaniel Loewus-Deitch
IntroductionIntroduction
SeeSys is a system that allows users toSeeSys is a system that allows users to
visualize statistics associated with codevisualize statistics associated with code
that is divided hierarchically intothat is divided hierarchically into
subsystems, directories, and files.subsystems, directories, and files.
IntroductionIntroduction
Problems with current methods:Problems with current methods:
– Ineffective for large software systems.Ineffective for large software systems.
– Routines for producing flow charts, functionRoutines for producing flow charts, function
call graphs, and structure diagrams oftencall graphs, and structure diagrams often
break down.break down.
– Incomprehensible, cluttered display.Incomprehensible, cluttered display.
IntroductionIntroduction
Project managers need a tool thatProject managers need a tool that
facilitates management issues of softwarefacilitates management issues of software
development.development.
– Where new development activity is occurring.Where new development activity is occurring.
– Which modules are error prone.Which modules are error prone.
Motivation for SeeSys came from AT&T’sMotivation for SeeSys came from AT&T’s
massive communications softwaremassive communications software
system.system.
Five questions for project managers (pg.Five questions for project managers (pg.
162)162)
IntroductionIntroduction
Statistical methods, alone, don’t provideStatistical methods, alone, don’t provide
thethe contextcontext necessary to make validnecessary to make valid
analyses.analyses.
SeeSys visualizes subsystem, directory,SeeSys visualizes subsystem, directory,
and file statistics, but within appropriateand file statistics, but within appropriate
context.context.
– Preserves hierarchical relationships in thePreserves hierarchical relationships in the
code.code.
– Makes it easy to relate the statistics to theMakes it easy to relate the statistics to the
components.components.
ApproachApproach
Based on idea that software system canBased on idea that software system can
be decomposed into its individualbe decomposed into its individual
components.components.
Subsystems labeled with letters.Subsystems labeled with letters.
Subsystems are partitioned vertically andSubsystems are partitioned vertically and
their area is based on a particulartheir area is based on a particular
subsystem statistic.subsystem statistic.
Allows for visual comparison of directoriesAllows for visual comparison of directories
within a subsystem.within a subsystem.
ApproachApproach
Fill represents a second statistic, such asFill represents a second statistic, such as
indicating newly-developed code.indicating newly-developed code.
Zoom view to get a closer look at anZoom view to get a closer look at an
individual subsystem.individual subsystem.
Hierarchical decomposition immediatelyHierarchical decomposition immediately
relates the files to their directories and therelates the files to their directories and the
directories to their subsystems.directories to their subsystems.
– Makes cross unit comparisons easy.Makes cross unit comparisons easy.
ApproachApproach
The fill represents percentages.The fill represents percentages.
– Allows for quick discovery of outliers.Allows for quick discovery of outliers.
ApplicationsApplications
Subsystem informationSubsystem information
– Size and color brightness represent the sizeSize and color brightness represent the size
or individual subsystems.or individual subsystems.
Directory informationDirectory information
– Each subsystem is partitioned vertically toEach subsystem is partitioned vertically to
show its internal directories.show its internal directories.
– Area and color represent size.Area and color represent size.
– Fill is related to new development.Fill is related to new development.
– Figure 3 is the “software skyline.”Figure 3 is the “software skyline.”
ApplicationsApplications
Error-prone codeError-prone code
– Directory spikes represent detail for directoryDirectory spikes represent detail for directory
bug fixing.bug fixing.
– Subsystem g shows an example of a verySubsystem g shows an example of a very
high bug rate (figure 5), represented by thehigh bug rate (figure 5), represented by the
light gray subsystem rectangle.light gray subsystem rectangle.
System evolutionSystem evolution
– Animated display portrays growth through theAnimated display portrays growth through the
software’s version releases.software’s version releases.
– Shows history and trends of each subsystem.Shows history and trends of each subsystem.
The Visualization SystemThe Visualization System
SeeSys was designed to display softwareSeeSys was designed to display software
metrics that have two propertiesmetrics that have two properties
– Quantitative measureQuantitative measure
– AdditiveAdditive
May be extended to display complexityMay be extended to display complexity
metrics.metrics.
User InteractionUser Interaction
Tracks mouse movements and showsTracks mouse movements and shows
extra information about the componentextra information about the component
that the mouse cursor is touching.that the mouse cursor is touching.
– Active component indicated by a redActive component indicated by a red
highlighted boundary.highlighted boundary.
Available stats are shown on lower leftAvailable stats are shown on lower left
side of screen.side of screen.
Clicking these stats creates a redrawnClicking these stats creates a redrawn
display focused on this particular statistic.display focused on this particular statistic.
User InteractionUser Interaction
Five buttons control various options suchFive buttons control various options such
as presence of fill and zoom activation.as presence of fill and zoom activation.
ROWS slider controls the number of rowsROWS slider controls the number of rows
in the display.in the display.
Speed slider and frame slider controlSpeed slider and frame slider control
animation.animation.
During animation, one can watch theDuring animation, one can watch the
active bar in the slider to see thatactive bar in the slider to see that
particular subsystem’s evolution.particular subsystem’s evolution.
Display PrinciplesDisplay Principles
Based on 3 principles:Based on 3 principles:
– Individual components can be assembled toIndividual components can be assembled to
form the whole.form the whole.
Allows users to see relationships betweenAllows users to see relationships between
components.components.
– Pairs of components can be compared.Pairs of components can be compared.
– Components can be disassembled intoComponents can be disassembled into
smaller components.smaller components.
Allows structure of display to reflect structure ofAllows structure of display to reflect structure of
software.software.
Screen Real-EstateScreen Real-Estate
100% of display area is utilized.100% of display area is utilized.
Components with large statistics areComponents with large statistics are
visually dominant.visually dominant.
Zoom feature allows user to see smallZoom feature allows user to see small
directories.directories.
Spatial RelationshipsSpatial Relationships
Takes advantage of human ability toTakes advantage of human ability to
recognize spatial relationships.recognize spatial relationships.
People relate each component to thePeople relate each component to the
whole.whole.
It is easier to see relationships betweenIt is easier to see relationships between
components if the heights of thecomponents if the heights of the
rectangles are equal.rectangles are equal.
– Row slider allows user to choose number ofRow slider allows user to choose number of
rows displayed for an optimal display.rows displayed for an optimal display.
ColorColor
Redundantly encodes size.Redundantly encodes size.
Can also be used to encode age,Can also be used to encode age,
complexity, activity, number ofcomplexity, activity, number of
programmers, etc.programmers, etc.
ImplementationImplementation
Four linked views of data:Four linked views of data:
– Colorful space-filling display.Colorful space-filling display.
– Leftspace – controls, buttons, sliders.Leftspace – controls, buttons, sliders.
– Bottomspace – color scale and statistics.Bottomspace – color scale and statistics.
– Zoom view – details of a particularZoom view – details of a particular
subsystem.subsystem.
SummarySummary
SeeSys provides the following utilities:SeeSys provides the following utilities:
– Shows the sizes of the subsystems andShows the sizes of the subsystems and
directories and where the recent activity hasdirectories and where the recent activity has
occurred.occurred.
– Zoom in on particular subsystems.Zoom in on particular subsystems.
– Explore where bug fixes and new functionalityExplore where bug fixes and new functionality
have occurred.have occurred.
– Identify directories and subsystems with highIdentify directories and subsystems with high
fix-on-fix rates.fix-on-fix rates.
– Find historically active and extinct subsystemsFind historically active and extinct subsystems
SummarySummary
3 principles should ultimately be observed3 principles should ultimately be observed
when designing any visualization systemwhen designing any visualization system
for large software systems:for large software systems:
– Structure of display should reflect structure ofStructure of display should reflect structure of
software.software.
– Individual components should by comparableIndividual components should by comparable
and decomposable.and decomposable.
– Animation helps user visualize the evolutionAnimation helps user visualize the evolution
of the software.of the software.
SummarySummary
Potential users of SeeSys:Potential users of SeeSys:
– Project managersProject managers
– Feature engineersFeature engineers
– Software developersSoftware developers

More Related Content

Similar to Tree-Maps Visualize Hierarchies in Space

Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932Editor IJARCET
 
Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932Editor IJARCET
 
Tdm recent trends
Tdm recent trendsTdm recent trends
Tdm recent trendsKU Leuven
 
HBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBase
HBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBaseHBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBase
HBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBaseMichael Stack
 
Introduction_OF_Hadoop_and_BigData
Introduction_OF_Hadoop_and_BigDataIntroduction_OF_Hadoop_and_BigData
Introduction_OF_Hadoop_and_BigDataNilay Mishra
 
Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...
Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...
Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...Nagios
 
Data Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZoneData Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZoneDoug Needham
 
Object recognition
Object recognitionObject recognition
Object recognitionsaniacorreya
 
Introduction to data structures (ss)
Introduction to data structures (ss)Introduction to data structures (ss)
Introduction to data structures (ss)Madishetty Prathibha
 
Sochi hexitex sep 18 19 2008 poster
Sochi hexitex sep 18 19 2008 posterSochi hexitex sep 18 19 2008 poster
Sochi hexitex sep 18 19 2008 posterTaha Sochi
 
Data Structures & Recursion-Introduction.pdf
Data Structures & Recursion-Introduction.pdfData Structures & Recursion-Introduction.pdf
Data Structures & Recursion-Introduction.pdfMaryJacob24
 
Spot db consistency checking and optimization in spatial database
Spot db  consistency checking and optimization in spatial databaseSpot db  consistency checking and optimization in spatial database
Spot db consistency checking and optimization in spatial databasePratik Udapure
 
Data Analytics with R and SQL Server
Data Analytics with R and SQL ServerData Analytics with R and SQL Server
Data Analytics with R and SQL ServerStéphane Fréchette
 
TreeNetViz - Revealing Patterns of Networks over Tree Structure.
TreeNetViz - Revealing Patterns of Networks over Tree Structure.TreeNetViz - Revealing Patterns of Networks over Tree Structure.
TreeNetViz - Revealing Patterns of Networks over Tree Structure.liangou
 
Gephi icwsm-tutorial
Gephi icwsm-tutorialGephi icwsm-tutorial
Gephi icwsm-tutorialcsedays
 
IIIF and DSpace 7 - IIIF Conference 2023.pdf
IIIF and DSpace 7 - IIIF Conference 2023.pdfIIIF and DSpace 7 - IIIF Conference 2023.pdf
IIIF and DSpace 7 - IIIF Conference 2023.pdf4Science
 
Unit 3 3 architectural design
Unit 3 3 architectural designUnit 3 3 architectural design
Unit 3 3 architectural designHiren Selani
 

Similar to Tree-Maps Visualize Hierarchies in Space (20)

Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932
 
Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932Volume 2-issue-6-1930-1932
Volume 2-issue-6-1930-1932
 
Tdm recent trends
Tdm recent trendsTdm recent trends
Tdm recent trends
 
HBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBase
HBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBaseHBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBase
HBaseConAsia2018: Track2-5: JanusGraph-Distributed graph database with HBase
 
Introduction_OF_Hadoop_and_BigData
Introduction_OF_Hadoop_and_BigDataIntroduction_OF_Hadoop_and_BigData
Introduction_OF_Hadoop_and_BigData
 
Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...
Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...
Nagios Conference 2014 - Sam Lansing - Utilizing Data Visualizations in Syste...
 
Data Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZoneData Structure Graph DMZ #DMZone
Data Structure Graph DMZ #DMZone
 
Object recognition
Object recognitionObject recognition
Object recognition
 
Easy edd
Easy eddEasy edd
Easy edd
 
Introduction to data structures (ss)
Introduction to data structures (ss)Introduction to data structures (ss)
Introduction to data structures (ss)
 
Sochi hexitex sep 18 19 2008 poster
Sochi hexitex sep 18 19 2008 posterSochi hexitex sep 18 19 2008 poster
Sochi hexitex sep 18 19 2008 poster
 
Data Structures & Recursion-Introduction.pdf
Data Structures & Recursion-Introduction.pdfData Structures & Recursion-Introduction.pdf
Data Structures & Recursion-Introduction.pdf
 
Dm and dw
Dm and dwDm and dw
Dm and dw
 
Spot db consistency checking and optimization in spatial database
Spot db  consistency checking and optimization in spatial databaseSpot db  consistency checking and optimization in spatial database
Spot db consistency checking and optimization in spatial database
 
Data Analytics with R and SQL Server
Data Analytics with R and SQL ServerData Analytics with R and SQL Server
Data Analytics with R and SQL Server
 
TreeNetViz - Revealing Patterns of Networks over Tree Structure.
TreeNetViz - Revealing Patterns of Networks over Tree Structure.TreeNetViz - Revealing Patterns of Networks over Tree Structure.
TreeNetViz - Revealing Patterns of Networks over Tree Structure.
 
Talk Norway Aug2016
Talk Norway Aug2016Talk Norway Aug2016
Talk Norway Aug2016
 
Gephi icwsm-tutorial
Gephi icwsm-tutorialGephi icwsm-tutorial
Gephi icwsm-tutorial
 
IIIF and DSpace 7 - IIIF Conference 2023.pdf
IIIF and DSpace 7 - IIIF Conference 2023.pdfIIIF and DSpace 7 - IIIF Conference 2023.pdf
IIIF and DSpace 7 - IIIF Conference 2023.pdf
 
Unit 3 3 architectural design
Unit 3 3 architectural designUnit 3 3 architectural design
Unit 3 3 architectural design
 

Recently uploaded

Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 

Recently uploaded (20)

Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 

Tree-Maps Visualize Hierarchies in Space

  • 1. Tree-Maps: A Space-FillingTree-Maps: A Space-Filling Approach to the Visualization ofApproach to the Visualization of Hierarchical Information StructuresHierarchical Information Structures Presented by:Presented by: Daniel Loewus-DeitchDaniel Loewus-Deitch
  • 2. IntroductionIntroduction Novel method for visualizing hierarchies.Novel method for visualizing hierarchies. – Makes 100% use of available spaceMakes 100% use of available space Maps the full hierarchy onto the screen inMaps the full hierarchy onto the screen in a “space-filling manner.”a “space-filling manner.” – Called Tree-MapsCalled Tree-Maps Interactive ControlInteractive Control – Allows users to specify presentation of bothAllows users to specify presentation of both structural and content informationstructural and content information
  • 3. IntroductionIntroduction Sections of hierarchy with more importantSections of hierarchy with more important information are allocated more display space.information are allocated more display space. Collection of rectangular boxes represent theCollection of rectangular boxes represent the tree structure.tree structure. Best suited to hierarchies whereBest suited to hierarchies where – The content of the leaf nodes and the structure of theThe content of the leaf nodes and the structure of the hierarchy are most important.hierarchy are most important. – The content information associated with internalThe content information associated with internal nodes is largely derived from their children.nodes is largely derived from their children.
  • 4. Main ObjectivesMain Objectives Efficient space utilizationEfficient space utilization InteractivityInteractivity ComprehensionComprehension EstheticsEsthetics
  • 5. MotivationMotivation (Problems with Current Methods)(Problems with Current Methods) Traditional methods for displayingTraditional methods for displaying hierarchies can be classified into 3hierarchies can be classified into 3 categories:categories: – ListingsListings – OutlinesOutlines – Tree diagramsTree diagrams
  • 6. ListingsListings Can provide detailed content information.Can provide detailed content information. Present structural information poorly.Present structural information poorly. – Requires users to parse path information andRequires users to parse path information and move manually through the hierarchy to get amove manually through the hierarchy to get a real idea of its structure.real idea of its structure.
  • 7. OutlinesOutlines Can nicely provide both structural andCan nicely provide both structural and content.content. Structure can only be viewed a few linesStructure can only be viewed a few lines at a time.at a time. Inadequate for displaying a hierarchicalInadequate for displaying a hierarchical structure with more than a few hundredstructure with more than a few hundred nodes.nodes.
  • 8. Tree DiagramsTree Diagrams Excellent for small structures.Excellent for small structures. Make poor use of available display space.Make poor use of available display space. – Too much space used up for background.Too much space used up for background. Little content information.Little content information. – Presenting additional information clutters thePresenting additional information clutters the display space.display space.
  • 9. Why Tree-Maps are a goodWhy Tree-Maps are a good alternativealternative They use display space efficiently.They use display space efficiently. Can provide structural informationCan provide structural information implicitly.implicitly. – Eliminates the need to draw internal nodes.Eliminates the need to draw internal nodes. Provide an overall (global) view of theProvide an overall (global) view of the entire hierarchy.entire hierarchy. – Makes navigation and orientation easier.Makes navigation and orientation easier. Provides creative visual cues toProvides creative visual cues to communicate content information.communicate content information.
  • 10. Presenting DirectoriesPresenting Directories Problems with current methods:Problems with current methods: – None provide a graphical representation ofNone provide a graphical representation of the relative sizes of files or directories.the relative sizes of files or directories. – Command line listings force user to pieceCommand line listings force user to piece directory tree together manually.directory tree together manually. – Windows obscure each other and require tooWindows obscure each other and require too much effort to be arranged in any kind ofmuch effort to be arranged in any kind of useful manner.useful manner. – Icons only show the type of the file, but noIcons only show the type of the file, but no other properties.other properties.
  • 11. Presenting DirectoriesPresenting Directories Origin of Tree-Maps conceptOrigin of Tree-Maps concept – Venn diagramsVenn diagrams – Tree diagramsTree diagrams – Because these waste space, decided to useBecause these waste space, decided to use boxes instead of ovals, along with a bin-boxes instead of ovals, along with a bin- packing algorithm.packing algorithm. – Worked well for small hierarchies only.Worked well for small hierarchies only. Nesting caused problems.Nesting caused problems.
  • 12. Presenting DirectoriesPresenting Directories Origin of Tree-Maps conceptOrigin of Tree-Maps concept – Discovered “slice and dice” method.Discovered “slice and dice” method. Simple linear method (top-down).Simple linear method (top-down). – Developed a weight-proportionate distribution.Developed a weight-proportionate distribution. – Added a pop-up dialog window for detailedAdded a pop-up dialog window for detailed content information.content information. – Simple color mapping helps distinguishSimple color mapping helps distinguish various properties of files, such as type andvarious properties of files, such as type and size.size.
  • 13. Tree Map MethodTree Map Method Structural Information:Structural Information: – Interactive approach gives user control overInteractive approach gives user control over how tree is displayed.how tree is displayed. – Requires that a weight be assigned to eachRequires that a weight be assigned to each node, which determines the size of thatnode, which determines the size of that node’s bounding box.node’s bounding box.
  • 14. Tree Map MethodTree Map Method Structural Information:Structural Information: – There are some properties that always hold,There are some properties that always hold, maintaining a consistent relationship betweenmaintaining a consistent relationship between the structure of the hierarchy and its Tree-the structure of the hierarchy and its Tree- Map representation (pg. 156).Map representation (pg. 156). – Structural information is implicitly presented,Structural information is implicitly presented, but can be nested to explicitly indicate.but can be nested to explicitly indicate. – Non-nested display explicity provides directNon-nested display explicity provides direct selection only for leaf nodes.selection only for leaf nodes.
  • 15. Tree Map MethodTree Map Method Content Information:Content Information: – Variety of display properties determines howVariety of display properties determines how the node is drawn.the node is drawn. – Color is the most important property.Color is the most important property. – Other properties include pitch of tone andOther properties include pitch of tone and color saturation.color saturation. – Pop-up display provides information about thePop-up display provides information about the node currently under the cursor.node currently under the cursor.
  • 16. Coping With SizeCoping With Size Groups of small files can becomeGroups of small files can become indistinguishable (completely blackindistinguishable (completely black regions).regions). Zooming in on these regions helps theZooming in on these regions helps the local structure become clear.local structure become clear.
  • 17. Future ResearchFuture Research Exploration of alternate structuralExploration of alternate structural partitioning schemes.partitioning schemes. Appropriate visual display of both numericAppropriate visual display of both numeric and non-numeric content information.and non-numeric content information. Dynamic viewsDynamic views – Animated time sliceAnimated time slice
  • 18. Future ResearchFuture Research Extended operationsExtended operations – ZoomingZooming – MarkingMarking – SelectingSelecting – SearchingSearching
  • 19. Space-Filling SoftwareSpace-Filling Software VisualizationVisualization Presented by:Presented by: Daniel Loewus-DeitchDaniel Loewus-Deitch
  • 20. IntroductionIntroduction SeeSys is a system that allows users toSeeSys is a system that allows users to visualize statistics associated with codevisualize statistics associated with code that is divided hierarchically intothat is divided hierarchically into subsystems, directories, and files.subsystems, directories, and files.
  • 21. IntroductionIntroduction Problems with current methods:Problems with current methods: – Ineffective for large software systems.Ineffective for large software systems. – Routines for producing flow charts, functionRoutines for producing flow charts, function call graphs, and structure diagrams oftencall graphs, and structure diagrams often break down.break down. – Incomprehensible, cluttered display.Incomprehensible, cluttered display.
  • 22. IntroductionIntroduction Project managers need a tool thatProject managers need a tool that facilitates management issues of softwarefacilitates management issues of software development.development. – Where new development activity is occurring.Where new development activity is occurring. – Which modules are error prone.Which modules are error prone. Motivation for SeeSys came from AT&T’sMotivation for SeeSys came from AT&T’s massive communications softwaremassive communications software system.system. Five questions for project managers (pg.Five questions for project managers (pg. 162)162)
  • 23. IntroductionIntroduction Statistical methods, alone, don’t provideStatistical methods, alone, don’t provide thethe contextcontext necessary to make validnecessary to make valid analyses.analyses. SeeSys visualizes subsystem, directory,SeeSys visualizes subsystem, directory, and file statistics, but within appropriateand file statistics, but within appropriate context.context. – Preserves hierarchical relationships in thePreserves hierarchical relationships in the code.code. – Makes it easy to relate the statistics to theMakes it easy to relate the statistics to the components.components.
  • 24. ApproachApproach Based on idea that software system canBased on idea that software system can be decomposed into its individualbe decomposed into its individual components.components. Subsystems labeled with letters.Subsystems labeled with letters. Subsystems are partitioned vertically andSubsystems are partitioned vertically and their area is based on a particulartheir area is based on a particular subsystem statistic.subsystem statistic. Allows for visual comparison of directoriesAllows for visual comparison of directories within a subsystem.within a subsystem.
  • 25. ApproachApproach Fill represents a second statistic, such asFill represents a second statistic, such as indicating newly-developed code.indicating newly-developed code. Zoom view to get a closer look at anZoom view to get a closer look at an individual subsystem.individual subsystem. Hierarchical decomposition immediatelyHierarchical decomposition immediately relates the files to their directories and therelates the files to their directories and the directories to their subsystems.directories to their subsystems. – Makes cross unit comparisons easy.Makes cross unit comparisons easy.
  • 26. ApproachApproach The fill represents percentages.The fill represents percentages. – Allows for quick discovery of outliers.Allows for quick discovery of outliers.
  • 27. ApplicationsApplications Subsystem informationSubsystem information – Size and color brightness represent the sizeSize and color brightness represent the size or individual subsystems.or individual subsystems. Directory informationDirectory information – Each subsystem is partitioned vertically toEach subsystem is partitioned vertically to show its internal directories.show its internal directories. – Area and color represent size.Area and color represent size. – Fill is related to new development.Fill is related to new development. – Figure 3 is the “software skyline.”Figure 3 is the “software skyline.”
  • 28. ApplicationsApplications Error-prone codeError-prone code – Directory spikes represent detail for directoryDirectory spikes represent detail for directory bug fixing.bug fixing. – Subsystem g shows an example of a verySubsystem g shows an example of a very high bug rate (figure 5), represented by thehigh bug rate (figure 5), represented by the light gray subsystem rectangle.light gray subsystem rectangle. System evolutionSystem evolution – Animated display portrays growth through theAnimated display portrays growth through the software’s version releases.software’s version releases. – Shows history and trends of each subsystem.Shows history and trends of each subsystem.
  • 29. The Visualization SystemThe Visualization System SeeSys was designed to display softwareSeeSys was designed to display software metrics that have two propertiesmetrics that have two properties – Quantitative measureQuantitative measure – AdditiveAdditive May be extended to display complexityMay be extended to display complexity metrics.metrics.
  • 30. User InteractionUser Interaction Tracks mouse movements and showsTracks mouse movements and shows extra information about the componentextra information about the component that the mouse cursor is touching.that the mouse cursor is touching. – Active component indicated by a redActive component indicated by a red highlighted boundary.highlighted boundary. Available stats are shown on lower leftAvailable stats are shown on lower left side of screen.side of screen. Clicking these stats creates a redrawnClicking these stats creates a redrawn display focused on this particular statistic.display focused on this particular statistic.
  • 31. User InteractionUser Interaction Five buttons control various options suchFive buttons control various options such as presence of fill and zoom activation.as presence of fill and zoom activation. ROWS slider controls the number of rowsROWS slider controls the number of rows in the display.in the display. Speed slider and frame slider controlSpeed slider and frame slider control animation.animation. During animation, one can watch theDuring animation, one can watch the active bar in the slider to see thatactive bar in the slider to see that particular subsystem’s evolution.particular subsystem’s evolution.
  • 32. Display PrinciplesDisplay Principles Based on 3 principles:Based on 3 principles: – Individual components can be assembled toIndividual components can be assembled to form the whole.form the whole. Allows users to see relationships betweenAllows users to see relationships between components.components. – Pairs of components can be compared.Pairs of components can be compared. – Components can be disassembled intoComponents can be disassembled into smaller components.smaller components. Allows structure of display to reflect structure ofAllows structure of display to reflect structure of software.software.
  • 33. Screen Real-EstateScreen Real-Estate 100% of display area is utilized.100% of display area is utilized. Components with large statistics areComponents with large statistics are visually dominant.visually dominant. Zoom feature allows user to see smallZoom feature allows user to see small directories.directories.
  • 34. Spatial RelationshipsSpatial Relationships Takes advantage of human ability toTakes advantage of human ability to recognize spatial relationships.recognize spatial relationships. People relate each component to thePeople relate each component to the whole.whole. It is easier to see relationships betweenIt is easier to see relationships between components if the heights of thecomponents if the heights of the rectangles are equal.rectangles are equal. – Row slider allows user to choose number ofRow slider allows user to choose number of rows displayed for an optimal display.rows displayed for an optimal display.
  • 35. ColorColor Redundantly encodes size.Redundantly encodes size. Can also be used to encode age,Can also be used to encode age, complexity, activity, number ofcomplexity, activity, number of programmers, etc.programmers, etc.
  • 36. ImplementationImplementation Four linked views of data:Four linked views of data: – Colorful space-filling display.Colorful space-filling display. – Leftspace – controls, buttons, sliders.Leftspace – controls, buttons, sliders. – Bottomspace – color scale and statistics.Bottomspace – color scale and statistics. – Zoom view – details of a particularZoom view – details of a particular subsystem.subsystem.
  • 37. SummarySummary SeeSys provides the following utilities:SeeSys provides the following utilities: – Shows the sizes of the subsystems andShows the sizes of the subsystems and directories and where the recent activity hasdirectories and where the recent activity has occurred.occurred. – Zoom in on particular subsystems.Zoom in on particular subsystems. – Explore where bug fixes and new functionalityExplore where bug fixes and new functionality have occurred.have occurred. – Identify directories and subsystems with highIdentify directories and subsystems with high fix-on-fix rates.fix-on-fix rates. – Find historically active and extinct subsystemsFind historically active and extinct subsystems
  • 38. SummarySummary 3 principles should ultimately be observed3 principles should ultimately be observed when designing any visualization systemwhen designing any visualization system for large software systems:for large software systems: – Structure of display should reflect structure ofStructure of display should reflect structure of software.software. – Individual components should by comparableIndividual components should by comparable and decomposable.and decomposable. – Animation helps user visualize the evolutionAnimation helps user visualize the evolution of the software.of the software.
  • 39. SummarySummary Potential users of SeeSys:Potential users of SeeSys: – Project managersProject managers – Feature engineersFeature engineers – Software developersSoftware developers