Wednesday, June 20, 2012

Maybe more about Treemaps than you ever wanted to know...

Treemaps for space-constrained visualization of hierarchies

During 1990, in response to the common problem of a filled hard disk, I became obsessed with the idea of producing a compact visualization of directory tree structures. Since the 80 Megabyte hard disk in the HCIL was shared by 14 users it was difficult to determine how and where space was used. Finding large files that could be deleted, or even determining which users consumed the largest shares of disk space were difficult tasks.

Tree structured node-link diagrams grew too large to be useful, so I explored ways to show a tree in a space-constrained layout. I rejected strategies that left blank spaces or those that dealt with only fixed levels or fixed branching factors. Showing file size by area coding seemed appealing, but various rectangular, triangular, and circular strategies all had problems. Then while puzzling about this in the faculty lounge, I had the Aha! experience of splitting the screen into rectangles in alternating horizontal and vertical directions as you traverse down the levels. This recursive algorithm seemed attractive, but it took me a few days to convince myself that it would always work and to write a six line algorithm. This algorithm and the initial designs led to the first Technical Report (HCIL TR 91-03) in March 1991 which was published in the ACM Transactions on Graphics in January 1992 ( Choosing the right name took probably as long, but the term 'treemap' described the notion of turning a tree into a planar space-filling map.



Got to say, wow, that's a boatload of treemap information and references. Why are treemaps important? Look at a treemap and then look at the Metro Start Screens (Win8, WinPhone8, etc)...

(via Jason Haley - Interesting Finds: June 18, 2012)

No comments: