bordeaux:bordeaux_edition

Instructors: Guy Melançon (email: `Guy dot Melancon at labri dot fr`

), Bruno Pinaud (email: `Bruno dot Pinaud at labri dot fr`

)

Have a look at the page describing the course organization: assignments, term projects and evaluation, *deadlines*, etc.

Instructor: Bruno Pinaud

This first portion of the course is meant to introduce the topic of the course, motivate this still new research field although examples are there to indicate ideas go back to ancient times.

Have a look at the slides showed in the class.

It does include a comprehensive course on Tulip so students are able to work by themselves using the framework. As a consequence, an option is to delay the presentation and discussion about Munzner's nested model planned on the first day and advance the presentation of the following topics.

- InfoVis by examples
- Florence Nightingale, an example showing how visualization may be misleading …
- White house budget directly from the White House website
- Obama's 2012 Budget from the New-York Times website
- Visualization in action (using Tulip / directory import (tree layout, 2 1/2 D); IMDB; poker players)

- How to evaluate whether a visualization is 'good' or 'bad'
- Communication theory and distances: operative (opératoire), articulatory, semantic (Nanard & Nanard 2002)

- Course unfolding - Homeworks / Assignments / Projects / Grades

**Homework**

You need to submit your work on *September 27 at the latest*.

- You are asked to select an existing visualization (try http://www.visualcomplexity.com/vc/) and comment it based on objective criteria (operatory, articulatory and semantic distances) - see the Perception section.
- Provide a context motivating the realization of the map (what is it about, why did the authors consider making such a map ?)
- Provide a short write-up listing positive and negative aspects of the map, giving arguments for/against its readability and efficiency at carrying the intended message or task.
*Be*.**objective**, don't lay down all the feelings you had about it - Prepare a 2 minutes presentation (very short, be efficient and crispy), the next class will start with a fast-forward presentation of all maps.

Instructor: Guy Melançon

Drawing graphs, for real

- A (very) brief introduction
- Trees: Walker's algorithm and variations

Have a look at the powerpoint presentation I showed in the class.

Because we want to actually 'do' things, we need to devote time learning how to use the Tulip framework (developed here at LaBRI).

`python`

API (see Tulip's website)`python`

view

This part of the course or lesson will consists in:

- getting a graph (File/Import)
- you may want to try the Grid, or Grid Approximation algorithm

- computing a spanning tree out of it (python script)
- use a simple data structure like a stack or queue to drive the computation of a spanning tree, it's a few lines algorithm (python has a handy
`Queue`

library

- applying a layout algorithm to the tree subgraph
- your spanning tree algorithm could well use a boolean property to select what edges (and all nodes) are selected to form the tree. once you have that, use the
`addSubGraph`

method to build a subgraph - apply a tree layout algorithm to the tree. use the
`applyLayoutAlgorithm`

method. this method requires that you hand it a layout property. use the`getLayoutProperty`

to grasp the`viewLayout`

property so the new positions for nodes will automatically be transferred to the whole graph.

- playing with node/edge properties to make this as readable as possible
- grasp the color property
`viewColor`

. create and instance of a light gray color`tlp.Color(192, 192, 192)`

for instance. iterate over edges and turn the non selected edges to grey (`viewColor.setEdgeValue(edge, grey)`

)

Here is a solution. Have fun.

**Homework**

You need to submit your work on *October 15 (Monday), before 9am, at the latest*.

- You are asked to implement either
- Sindre's nested boxes (onion trees) algorithm for trees,
the H-tree layout by Eades*or*

- Your algorithm should start from an existing tree (use Tulip general tree random generator to test) and
from the previous layout to the next. The idea here is to force you to play with layout animation.*animate the change*

Instructor: Bruno Pinaud

Graph drawing basics

Have a look at the slides I showed in the class.

See **Di-Battista, G.; Eades, P.; Tamassia, R. & Tollis, I.-G. Graph drawing – Algorithms for the visualization of graphs Prentice-Hall, 1999**
for a nice introduction to graph drawing.

Hierarchical graph drawing (also called Layered drawing)

See this paper for a complete overview.

Getting serious with Tulip

`python`

API (see Tulip's website)`python`

view

**Homework**

Recall that you need to submit your homework #2 on *October 15 at the latest*.

Instructor: Bruno Pinaud

Working session on the homework #2.

Instructor: Guy Melançon

“Drawing multi-dimensional datasets”. The course covered all material of the High-dimensional datasets. Parts of the course were left as exercises, mainly to implement the PCA and MDS algorithms we discussed. The Cars dataset was used to illustrate the ideas and algorithms.

Code is now available from the PCA and MDS sections (see the exercises subsections).

Instructors: Guy Melançon

Downsizing data, cutting networks into pieces - part I

The course will cover the Huygens Ward theorem, the K-means and CURE algorithms. Most of your time shall be devoted to implementing the CURE algorithm and track for the best clustering of the Cars dataset.

Code is now available from the k-Means algorithm.

Instructors: Bruno Pinaud

Divide and conquer - drawing and manipulating graph hierarchies with Tulip We will use the following file to play with graph hierarchies infovis_clean.tlpx. The work to do is described in this document hierarchies.pdf.

Instructors: Guy Melançon

Downsizing data, cutting networks into pieces - part II

Instructors: Guy Melançon

Focus & Context - show the big picture, and provide details around a point of interest

Instructors: Bruno Pinaud

Take a dataset from http://snap.stanford.edu/data/index.html or Kaggle ($$$ ) or the Visual Analytics Benchmark Repository.

Term project - I

Instructor: Guy Melançon

Term project - II

Instructor: Bruno Pinaud

Term project - III

/net/html/perso/melancon/Visual_Analytics_Course/data/pages/bordeaux/bordeaux_edition.txt · Last modified: 2012/11/26 10:51 by melancon