5. Trees and Graphs

¡Supera tus tareas y exámenes ahora con Quizwiz!

how do we create a force directed graph (basics here)?

- Edges are modeled as springs - To help avoid overlaps, nodes are modeled to electrically repel each other - Final positions are found by simulating the resulting forces

some typical design goals of node-link diagrams for trees (5)

- Nodes at same depth share the same vertical position - Horizontal whitespace communicates hierarchy - Minimize required area - Minimize total length of edges - Achieve good aspect ratio

drawbacks of treemaps?

- difficult to accurately read depth -Naïve splitting can lead to rectangles with poor aspect ratios

three approaches to recursive/rooted trees?

- node link - indentation - enclosure (treemaps)

benefits of treemaps?

- provides single view of entire tree - easy to tell "size" of node - easy to encode additional attributes (color)

how to resolve ambiguities in edge bundling? (3)ex

-Continuously adjusting edges using a bundling strength β ∈ [0,1] resolves this -filtering -controlling transparency

different kinds of attributes that a graph can be?

-directed/undirected -weighted/unweighted -cyclic/acyclic -connected

Explain the Reingold-Tilford algorithm in steps

-given a L and R subtree -shift them a fixed horizontal difference which is determined by threading -center parent between them

what are the 5 aesthetic goals of Reingold-Tilford

-nodes at same level should be aligned -maintain the relative ordering of L and R subtrees -parent should be centered over the children -a tree and its mirror image should be drawn as reflections of each other -a subtree should be drawn the same way regardless of where it occurs in the tree

how to show edge bundling?

-start with standard tree layout for hierarchy -use the path along the tree to control the polygon for the shape

What is a thread in the context of the Reingold-Tilford algorithm? What purpose does it serve?

A Reingold-Tilford "thread" is the way to find an appropriate distance between two subtrees that will look aesthetically pleasing. Basically, it requires going through the inner contours of each of the two subtrees, finding a leaf, then storing the thread as a pointer to one depth higher in that contour. That pointer marks the level that will require the maximum distance between the trees, so you know how far to space the two subtrees out.

describe the basic treemap algorithm

A basic treemap algorithm recursively fills available space based on a size metric for nodes - Simplest case: Alternate between horizontal and vertical splits

Force-directed graph layout uses an electrical repulsion term that is often set to zero for nodes whose current distance exceeds a certain threshold. Name two reasons for this truncation.

A threshold keeps the node within the image and also produces faster results and leads to improved results because by neglecting those beyond a certain range, you are reducing the computational complexity.

limits of bundling strength and meaning

Beta [0,1] closer to 0, the straighter it becomes, closer to 1, the curvier it becomes Low bundling strength mainly provides low-level, node-to-node connectivity information, whereas high bundling strength provides high-level information

what is cushion shading?

Cushion shading supports perception of hierarchies I = Ia + Id max(0, n ⋅ l) also allows addition of frames and interaction

what is the Grid Variant of the Force directed layout? what is its purpose/advantages?

Divide plane into grid cells and only compute repulsive forces between nodes in the same cell it's a speedup method- it's faster and also produces better results for disconnected graphs

major drawback of squarified treemaps/ST? Solution?

Drawback: Hierarchical structure even more difficult to perceive solution: cushion shading

describe the bubble tree layout

Each inner node becomes the center of all its children, makes it easy to distinguish subtrees (like those brand ownership things you see)

What if you have hierarchical (inclusion) and non-hierarchical (adjacency) relationships at the same time?

Edge bundling: Bundle together edges that originate from or end in similar parts of the hierarchy

the general algorithm for force directed layout:

Initialize (randomly or through a heuristic) For each node: -sum all attractive and repulsive forces -multiply overall force by step size/temperature -impose a maximum displacement (so to keep the points within the image) -move node Adjust temperature

major issue with treemaps? solution?

Naïve splitting can lead to rectangles with poor aspect ratios solution is Squarified treemaps

describe a layered layout

Nodes of Directed Acyclic Graphs can be organized in layers (topological sort) - Assign vertical position to each layer - Suggests a hierarchy, similar to tree visualization

goal of force directed graph layouts?

Place groups of strongly connected nodes close to each other, preserve minimum distance between nodes

what are Quenching and Simmering?

Quenching is a rapid "cooling" so quick lowering of the temperature/step size at first Cooling is a constant low temperature following quenching together they create really big changes at first and then smaller changes once the graph gets closer to where it is supposed to be

why are rooted trees nice?

Recursion makes it elegant and fast to draw trees

what is the name of the tree Aesthetics?

Reingold-Tilford

how do squarified treemaps or ST sort siblings?

ST sorts sibling nodes by size

Briefly explain a benefit and a drawback of the squarified treemaps algorithm compared to classical treemaps.

Squarified treemaps are better than classical treemaps in that they don't lead to rectangles that are difficult to see when they are too tall and thin or too short and wide. They use squares instead to improve visualization. However, finding an optimal solution to make everything for "square" is NP hard, and the hierarchical structure, when looking at a very nested treemap, is actually a bit harder to see in squarified treemaps.

what are squarified treemaps? what is the complexity otherwise?

Squarified treemaps: greedy heuristic to favor squares over elongated rectangles otherwise finding optimal solution is NP Hard

define treemaps

Treemaps encode structure using spatial enclosure- better use of screen space

another word for non-hierarchical relations?

adjacency

example of Edge Bundling in Comparative Genomics

bundles edges from the same source block that are preserved in the same target chromosome

radial layout for edge bundling?

can be used for control polygons; nodes mirrored to the outside for labeling

define a tree

connected acyclic graph which often represents a hierarchical structure

what is synteny?

conservation of genomic features

pro and con of Reingold-Tilford?

easy to understand but can lead to weird aspect ratios

another word for hierarchical relations?

inclusion

example of edge bundling in neuroimaging

iteratively move similar edges in 3D fMRI connectivity graphs towards each other

downsides of indentation methods for trees?

lots of scrolling large imbalanced suboptimal use of space

biological example of something that might use a layered layout?

metabolic pathways

alternative to the Reingold-Tilford tree?

non-level based tree- looks like a robot drew it because it's all boxy and going in different directions

two alternative ways for node-link layouts?

radial layout bubble tree layout

what are sunburst displays?

space filling layout where root is center and nested rings around it show hierarchy space filling like a treemap but layout similar to radial node-link layout

what physical system motivates force directed graphs?

spring

what is comparative genomics?

synteny between genomes

primary concern of graph visualization?

the spatial layout of nodes and edges

what is the overall goal of Reingold-Tilford

tidier drawings of trees

can we apply Reingold Tilford to radial layout?

yes!

describe radial layout

• node-link diagram in polar coordinates • radius encodes depth with root in center • angular sectors assigned to subtrees

describe the indentation method for trees

• place all items along vertically spaced rows • indentation used to show parent/child relationships • commonly used as a component in user interfaces • breadth and depth contend for space


Conjuntos de estudio relacionados

Chapter 60: Assessment of Neurologic Function

View Set

The words which are used only in plural.

View Set

HESI Dosage Calculations Practice Questions

View Set

Intro to Ethics Final Exam Review

View Set

Categorical Logic (The Mechanics of Conversion, Obversion, and Contraposition)

View Set

Section 4 mini quizzes chapter 1

View Set