Spatial Layout

From Visualization Sp06

Lecture on Feb 9, 2006

Slides

Readings

  • A general cartographic labeling algorithm, Edmondson, Marks & Shieber (pdf)
  • A survey of automated layout techniques for information presentations, Lok and Feiner (pdf)
  • Dynamic space management for user interfaces, Bell & Feiner (pdf)
  • Artistic resizing, Dragicevic et al. (pdf)

Optional Readings

Demonstrations

Contents

Bryan - Feb 08, 2006 10:40:15 am

The Bell and Fiener paper was in interesting read. It describes an automatic arrangement system for windows in a workspace. It has a bunch of metrics, an algorithm, all fairly well-though out but still complex and non-intuitive. It made me think of immediately of Expose, a feature of the Mac OS X operating system, which automatically resizes and spreads windows so that they can all be seen simultaneously. I used to work at Apple, and was told a story that this feature went from idea to complete implementation in about 2 days, and has ended up as one of the most popular features with users.

I myself am addicted to it--I'd say it saves me 30-50% of the time I spend just coping with looking around for windows and organizing them. I just don't bother anymore--one click of my mouse and I see them all. No dock or start bar needed. At this point I'm incapable of working on a system for an extended period of that doesn't have this feature.

There is no citation attached to Expose on Apple's site, but I can't help but think that the people doing UI design there have been informed by contemporary HCI research.

Lesliei - Feb 08, 2006 01:15:26 pm

I found Apple's patent application for Expose. Like any patent I've seen, it's a tough read but interesting to look through. The most readable sections are the description and the detailed description.

Pushkar - Feb 08, 2006 10:59:56 pm

In "Optimization for Label Placement", the authors mention that simulated annealing was remarkably efficient for label placement. I think the reason it worked well is that at every optimization iteration, they considered only a finite set of pre-processed (locally optimal) label positions. I'd like to point out that this smart choice for candidate positions allowed the authors to use simulated annealing efficiently.

Also, the problem of optimal layout is not limited to visualization. Although the metrics for optimality are different, VLSI designers started tackling this problem in the past, and more recently, MEMS designers are addressing it. For example, this paper (MEMS Synthesis) describes a two-way approach of layout optimization: a global optimization using genetic algorithms (a generalized form of simulated annealing) and local gradient based methods. This is strikingly similar to the above cartographic labeling algorithm of Edmondson et al.

Nchentan - Feb 09, 2006 02:04:44 am

Add to Bryan's comment about Expose: There exist many softwares similar to Expose in Windows as well. To name a few, WinPLOSION, iEx, TopDesk. They are however, not free softwares and are a bit slow, in trial versions. I really hope to see something like this built in in the next Windows!

Jason - Feb 09, 2006 01:42:27 pm

I liked Maneesh's paper on LineDrive directions. The resulting maps are very reminiscant of drawings people make to communicate a route to someone which follows from the key observations made about the way we perceive maps. The problem I have with these visualizations is the lack of context surrounding the correct route. What do I do if I deviate from the directions? There are some "landmark" side streets indicated in subdued gray, but I presume too much additional information is more distracting than useful. I wonder how many additional features (landmarks, cross-streets, bodies of water, etc.) can successfully be added to these maps without being overly distracting, or if there would be a way to allow the user to interactively move a slider between "More Context" and "Less Context".

Maneesh - Feb 09, 2006 06:16:34 pm

Jason - The lack of context is definitely an issue with LineDrive. In general I think LineDrive is best for people that are somewhat familiar with the region, but now necessarily with the roads near the destination. In initial versions of LineDrive we presented an aditional standard map (drawn to scale) of the region near the destination to provide more context where it might be most useful. I wonder if there are other ways to incorporate context into such maps.

Noaa - Feb 10, 2006 10:33:49 am

I thought the automated layout techniques paper was interesting because I never really thought about how layouts tie into branding, and how important it is for sites to use this technique to preserve their unique look on all the different sizes of displays. I've seen some sites that to preserve their unique layout they waste a huge amount of space (maybe I'm on the outskirts since i have a 1400x1050 display), and they could have maintained their look but not made me look at only half my screen whenever I read their sites. I hope some of these techniques catch on!

Brien - Feb 14, 2006 01:44:32 pm

Artistic resizing seems very useful. Even if someone can write resize code, it's tedious (yet another resize code!). I like how this program aims to reduce not only the tediousness of the task but also the length of the feedback cycle. As mentioned in the paper, going between several variations of an idea is much quicker with this setup than compile-re-run setups, as it allows the designer to change behavior in program. Artistic resizing and template resizing (where a new template is switched in depending on scale) both use "key frame" interpolation. Elements -- characters, pictures -- and attributes – position, color, weight, and image data -- are functions of the current scale. However, artistic resizing uses continuous interpolation whereas template resizing uses discrete. Figure 2 in the artistic resizing paper shows the need for mixing continuous and discrete interpolation in these systems. Just from the image, if the word "epoques" was linearly interpolated between its left and right positions, the intermediate values would not be nice -- characters would overlap. I wonder if there has been any work in developing a general interpolation mechanism and possible user interaction with such a system (kind of broad).

Maneesh - Feb 14, 2006 06:02:59 pm

Brien - It would be neat to have a combination of discrete and continuous optimization. There was a paper at SIGGRAPH that presented such a hybrid optimization scheme for layout. It might be a fun project to build an updated version of that system - perhaps some kind of an example-based system. Here is a link to the paper:

Yi-Tao - Feb 21, 2006 04:09:37 pm

I wonder what the overhead for users of artistic resizing is. The idea is nice and the demo looked awesome. However, if I was going to post a news article, is it worthwhile to invest time in figuring out the best resizing method? Most website seem to just use a fixed width and have blank spaces on the sides for any larger resolutions. Obviously, this is not as nice as artistic resizing, but it's simple and straightforward. Any algorithm that tries to do artistic resizing might end up formatting the article in an awkward fashion (i.e., the picture is far from the paragraph that discusses it).

IvanTam - Feb 27, 2006 09:58:29 am

Regarding spatial layout and window managers for XFree86, there is an interesting project called ION2 that allows for users to define their own window layout strategy in the Lua programming language. What I like about ION2 is it's return to non-overlapping windows, reducing occlusion and thus reducing some degree of cognitive load on the user.

That said however, I think there can be a case made for systems like Expose and YahooWidgets, which deliberately occlude certain views to reduce clutter. I think Expose/Widgets are good tradeoff as the space where the user does his/her work is well seperated from the space where less-frequently viewed objects are kept.



[add comment]