Spatial Layout

From CS 294-10 Visualization Sp10

Jump to: navigation, search

Lecture on Mar 8, 2010

Slides

Contents

Readings

Same readings as for Using Space Effectively: 2D II lecture. However, you are still responsible for making a comment on this lecture.

  • 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)

Optional Readings

  • Rendering effective routemaps, Agrawala & Stolte (pdf)
  • Artistic resizing, Dragicevic et al. (pdf)
  • Adaptive grid-based document layout, Jacobs et al. (acm)
  • Map labeling bibliography

Demonstrations

DavidZats - Mar 08, 2010 01:15:17 pm

All of these papers discuss solutions intended to ameliorate the problems associated with object and/or label placement in a two-dimensional space. The first paper discusses the efficient placement of labels for features. It discusses how to label three types of features: points, lines, and areas. The second paper discusses the mechanisms currently employed for automatically laying out the objects. While it touches upon many research systems that employ advanced tools such as learning abstract and spacial constraints and employing conflict resolution, it shows that most commercially available software uses very simple techniques. Finally, the third paper discusses how to best determine where an object may be placed so as not to overlap with others (i.e. free space management).

A question I had about the second paper was about the manual removal of a certain set of features for which labels could not be positioned by the system. I would have liked to know what the properties of these features were such that they had to be removed and whether or not a more advanced mechanisms would could have been able to label them.

I also had a question about the paper on layout techniques. How often are metrics such as minimizing the movement of the mouse employed in developing user interfaces? While reduced mouse movement is in general a positive characteristic, it does not seem to me that it necessary implies other important considerations, such as whether the interface is intuitive to the user.

RyanGreenberg - Mar 09, 2010 01:51:45 pm

This seems like the best place to make some comments on Ben Shneiderman's talk. One of the things I thought was most interesting about what Shneiderman said was his approach to interfaces. I mentioned this in class, but I forgot the language he used that made this so compelling. Shneiderman said that "visualization can help restructure people's thought processes," which I thought was a contrast with the more common idea that visualization tools should conform to user's existing interaction patterns. This idea of changing the way people think about a problem was apparent in the medical example of Lifelines. The Lifelines pattern of aligning events, filtering, ranking is probably not an "intuitive" way for medical professionals to answer their questions about these data. That's OK because it's intended to restructure the ways people think about how to get answers to their questions.

Shneiderman's comment about how much faster the timeboxes interface was compared with SQL was great. Paraphrased: Some people look at timeboxes and say that there's nothing here you can't do with SQL. Well, the query we're showing here probably requires 40 lines of SQL, which would take 100 seconds to write. With this GUI, we can do it 10 times a second, so I argue that it's 1000 times better.

Zev Winkelman - Mar 11, 2010 05:05:10 pm

I'll also take this opportunity to comment on the Schneiderman talk.

The blue/red political demo was of particular interest to me as it involved data that I found relevant to my field of study.

I also found it interesting that several of the big drivers for advances in this area were medicine, finance, and pharma.

What other fields are pushing the envelope of what visualization is capable of ?

Stephen Chu - Mar 13, 2010 02:49:43 pm

I couldn't make it to the actual talk, but I found and enjoyed the webcast [1]. I really liked how Shneiderman showed the broad range of uses for visualizations. These examples made it clear why research in information visualization is so important. When Shneiderman presented Lifelines2, I thought about something insulting my housemates said two years ago. I had just switched from my pre-med track as a biology major to computer science, and my housemates made fun of me for choosing to "just programming stuff," as if their future careers in medicine wouldn't be supported or rely on contributions from the computer science community.

Question: Shneiderman said the data mining has moved away from visualizations. Why?

Mason Smith - Mar 14, 2010 03:11:30 pm

Excentric labels: This is a really great idea that I hope gets used more in the future. With that said, I think the system would be more useful for LoD-style labeling, rather than static labeling. For instance, on a zoomed-out version of the map, major landmarks would be explicitly labeled, and smaller landmarks would only be excentricaly labeled. The cartography example presented on the website seems less useful, as the labels don't really add much.

Shimul Sachdeva - Mar 15, 2010 05:03:17 am

The excentric labeling shown in class was interesting, but the use of colors and textbox outlines seems redundant. Distortion (from last week's lecture) had some interesting examples - like the London underground tube map. Since labeling poses a problem with distortion, it would be nice to see an algorithm that finds effective labeling with distortion accounted for. I wonder if dynamic labeling (where user clicks on the item to see its label) is a viable option when there are too many labels.

Automated constraint extraction seems to be a hard problem. Page layout problem (Scientific American) shown in class was a powerful example and the research on adaptive grid-based page layout has potential.

The last slide, showing the human body as a cartogram is a great visualization! It is a good example of cartograms.

Ebby Amirebrahimi - Mar 15, 2010 12:42:50 pm

i've always thought automated labeling is a much harder problem than it would seem initially, and it is very frustrating to deal with. Most of the time, I'm tempted to not worry about it and just have the user suffer. However, it was very nice to see this Cartographic Labeling algorithm hashed out. It certainly is a very tricky problem and I enjoyed seeing their various approaches to the problem followed by a solution that seems to account for all the annoying tidbits necessary for good labeling.

I enjoyed reading Bell & Feine as I feel like too many UI's do a poor job of presenting multiple sets of information on a screen. Their algorithm seems fairly similar to the windowing systems used in osx and Windows. I definitely think there could be more improvement in this area though. I feel like UIs work better when they give a sense of depth, which is why I find osx easier to use than Windows, which takes a more 2d approach to the display on windows on the screen. However, I'm not sure if that's true for everyone, since I've spoken to many who can't stand the messy collection of windows that accumulate on a typical osx desktop.

Kerstin Keller - Mar 15, 2010 01:28:23 pm

The paper about automated layout techniques by Lok and Feiner adresses some really important problems. I think people who are writing papers and doing presentations know of the challenge to produce a good looking outcome, where figures and tables are placed appropriately. I worked on my bachelor thesis using latex, and more than once I was annoyed, that a figure would show up somewhere completely else than I anticipated, however I valued having all formatting done for me. Latex easily lets you specifiy abstract contraints, but specifying spatial can be tedious.

Boaz Avital - Mar 15, 2010 02:13:00 pm

Finding layouts in an automated way is indeed helpful, but I don't think it should be the final step in layout designing. The layout that comes from an automated algorithm will not always be ideal or pleasant, no matter how good the algorithm and constraints are. If you're designing something ahead of time, I think the best use for the automated layout technique is to create a large number of typified options (like visualizations have different kinds of bar charts, pie charts, etc) for the user to choose from based on the information present. This creates I believe the best of both worlds. If the layout needs to be created on the fly, I still think and automated algorithm should have to choose between preapproved layouts, many of which may have been created automatically in the first place but were at least approved for human consumption.

Arpad Kovacs - Mar 15, 2010 12:52:59 pm

I found the most interesting part of the Lok and Feiner spatial layout survey paper to be the learning techniques portion, where a user interacts with and "trains" the system into learning particular constraints, such as minimizing mouse movement. It is fascinating that so many of the HCI/visualization techniques we are covering lately use concepts from artificial intelligence, such as simulated annealing and other constraint-satisfaction techniques.

This paper raises a few questions: how easy is it to retroactively add automated layout management to existing interfaces? A lot of open-source software suffers from poor layout-management that could be ameliorated using the techniques described here. However, the attractiveness of using these techniques drops rapidly if significant setup and configuration is required to re-specify the constraints. It would be very nice if a tool could attempt to analyze an existing design, and then offer a set of choices for further optimizing its layout.

Another question I had is what is the optimal datastructures for keeping track of the layout? Traditional user-interfaces are typically laid out in a hierarchical tree structure, as implied by the Simple Techniques section. However, this makes it difficult to enforce constraints that simultaneously cut across multiple branches, such as the equal-width "cousins" constraint in figure 3. The constrained nodes' parents could be perturbed at any time, which would require re-checking of each constraint in each iteration, and could make convergence to a solution an extremely slow process.

An alternative is to lay out each element in a flat, nonhierarchical list or grid (which is probably how Feiner's GRIDS system got its name). Although this approach allows the specification of abstract constraints, it introduces constraint inconsistency problems such as circular dependencies. Thus, I imagine that GRIDS probably uses one of the techniques for avoiding inconsistency such as cycle prevention, prioritization, or tie-breaking. However, this is still not ideal, since it burdens the user with restrictions or requires input of additional information.

I would be curious if there are other, more efficient datastructures that are being used in the research projects that rely on the constraint-satisfaction approach, and what the advantages of these datastructures are.

Prahalika Reddy - Mar 16, 2010 12:57:45 am

I found the discussion on the cartographic projections to be interesting. As with any other visualizations, I feel using distortion isn't the most effective way to convey information. This is why I prefer the latitude-longitude projection and the mercator projections over the azimuthal or sinusoidal equiareal projections. With the latitude-longitude projections, the entire map is simplified, which doesn't seem appropriate for any distance measuring, but for any other simple purposes, it works better than the others. With the mercator projection, distance/angles are preserved better while still keeping the entire map easily readable. However, with sinusoidal equiareal projections, the map is so distorted that although area is preserved well, the map itself doesn't seem very useful. Despite the fact that I believe distortions aren't very effective, it is important to note that different techniques do serve different purposes, so perhaps distortions are effective in certain visualizations.

Priyanka Reddy - Mar 16, 2010 09:43:50 am

I think that the lecture on spatial layout was a very interesting one. I especially liked learning about the different ways to auto-label a graph. I had actually never given much thought before to how best to label a graph and wasn't aware there were algorithms to optimize this process. However, it makes sense that it would need to be automated given how much data we're looking at. I also liked the example of adaptive document layout. With all the technologies that have different size screens (ie. smartphone, netbook, laptop, monitor), being able to optimize document layout is critical. In this particular example, I thought the idea of filling extra space with large blurbs from the article was clever.

Schneiderman's talk was really enjoyable. I especially liked that he never mentioned how the tools he was presenting were/are supposed to be intuitive. With the trend nowadays of making sure all interfaces we design are intuitive to people, I liked that he didn't make that a criterion. In fact, he made the point that rather than just feeding information to the user, the tools were meant to empower the user to make decisions. And, I think that's a good takeaway point that we can apply when designing interfaces.

Akshay Kannan - Mar 16, 2010 04:13:13 pm

Having tried various window managers, I found the paper on spacial layout quite interesting. My preferences typically lean towards a tiled method for managing windows, since the usage of screen real estate is maximized and overlap is avoided entirely. However, I can also see how a strict hierarchical layout can prevent rectangles from straddling partitions. Furthermore, the sizes of windows are limited by a traditional tiling layout.

Jonathan Yen - Mar 29, 2010 03:10:19 pm

I thought that the LineDrive project was a really cool visualization of a map. I liked the fact that it approximates hand-drawn maps, and that it simplifies the driving route and adds labels accordingly. The project does a pretty good job demonstrating the importance of spatial layout.



[add comment]
Personal tools