MeatballWiki | RecentChanges | Random Page | Indices | Categories

These are pragmatic tips, not grand principles, for InformationVisualization. They are descriptions of mistakes I have made, and I believe they are valuable if only because learning them cost me dearly in my own time.

1. Anything resembling a fisheye lens will fail in the real world.

Distortion-based interfaces look wonderful but feel awful. Navigation in a fisheye world turns out to be incredibly hard because it is close to impossible to give the user the increased motor control they need to navigate both magnified and non-magnified areas alike. There are several hacks one might use, but they're all bad. The usability people finally figured this out at CHI 2002.

If you are literally doing a fisheye, you will discover that the boundary of the fisheye area is impossible to read because of the non-conformal mapping. God help you if you create a fisheye interface to a geographic map. If you insist on conformal mapping, you now have a hyperbolic tree; the set of people who can understand these has measure zero.

There is a special circle of hell reserved for people who do fisheye interfaces that distort text sizes. Text is either readable or it isn't. A really tiny paragraph does not look like a summary of the paragraph, it just looks like a mess.

Nonetheless, if you need to get a publishable result in the field of information visualization, you can always count on fisheye interfaces to do the trick because they look so damn cool. Too bad nobody will ever want to use your system.

2. Spirals are for art, not science.

Many times it will be tempting to arrange data in a spiral. That's because it looks neat. You might also convince yourself that it has a smooth kind of "focus and context" aspect where the outer stuff is salient and the inner stuff is seen at a distance. You can really go to town with this and prove theorems about the special properties spirals have.

None of this matters in the real world. That mathematically elegant focus and context stuff turns out to be nothing more than an annoying distortion. In fact any spiral interface can be improved by mapping polar (r, theta) to cartesian: (theta mod screen width, r). Biologists knew this long ago. You might object that this introduces discontinuities at the vertical boundaries. That's usually not a problem; if it is, just repeat part of the diagram horizontally. Biologists figured that one out a hundred years ago. Once you've done the polar to cartesian mapping, you'll discover that all your pesky labeling problems have been solved, too. Lucky you!

I'm not sure why, but spirals are great for art, though.

3. Using dummy data is for dummies.

Most of the time the data you want isn't available. Often it is seductive to say, "I will just use a set of random dummy data until the real data arrives." Go ahead, and while you're at it marry that alcoholic gambler because you think you can change him.

The real data will always look different than you expect, and it is exactly those differences which will be interesting to people. Mocking up random data will force you to make bad assumptions and will put your audience to sleep.

I am not saying you should simply give up if the data isn't available, just that getting the data--rather than thinking about what you'll do once you get it--must be your top priority.

4. Labeling is more important than you think, and harder too.

If you draw a graph, you know what the axes mean. If you make a treemap, you know what area stands for. But no one else can see the labels in your head. "Duh, I know that," you say. Sure you do. But have you ever put off making a nice legend and labels for a prototype because you figured you could just tell people what things mean? You know you have. Remember that when you say "size means total number of widgets, color means change in widget price, with purple meaing positive and pink meaning negative" all people will hear is "blah blah blah" and they'll be too embarrassed to ask you to repeat it.

Omitting labels is a mistake because (a) it makes your stuff look dumb to anyone else; and (b) labels often are the hardest thing about a visualization, so you give yourself a false sense of security. I have written five complex graphing packages in my life, and in each one the labels took more time than anything else. Anyone can make a 3D rotating bar chart. That's easy. But can you get tic marks and labels to to look good for absolutely any x-axis scale of a plain, old-fashioned line graph? That is the mark of the master.

5. Fancy statistics can be a trap.

Sometimes people do visualizations that depend on complex statistical analyses your audience wouldn't understand. For instance you might decide that it would be great to represent the day's news as a geographic map using a wacky clustering scheme. Yeah, maps of news. News maps! Yeah, you could base a whole business on that, even give it a name like Newsmaps.com. Yeah. And you would go bankrupt, too.

Compare that approach to the flash treemap that guy made of Google news. It only uses Google's categorizations into very broad obvious categories ("sports" vs "entertainment") and nationalities. Probably this was not easy for Google's engineers to get right, but the output (unlike poor Newsmaps) is immediately understandable to people.

If your audience is super-sophisticated, they may understand quite a bit. Michael Eisen got a lot of mileage out of his 1998 PNAS paper showing heat maps of hierarchical clustering of microarray data. Fine. But remember that your audience is probably not as sophisticated as the world's top biology departments.

6. 3D or not 3D?

Here's the deal: nobody has invented a useful 3D abstract information visualization, but a lot of smart people have tried. (Engineering types, this tip is not aimed at you, we all know that 3D is fine for visualizing physical things like fluid flow down a toilet bowl. I am talking here about lofty abstract data like tree structures, Java APIs, even your AIM buddylist.)

What this means is that if you try to invent a useful 3D visualization, you will almost certainly fail. The conventional wisdom heaves a cynical sigh and stops there.

Try 3D anyway. If you succeed you will be Number One Dog in the infovis world. That is no academy award but it is still worth something. More important you will have made the best contribution to the field in at least a decade. So go on, try to make 3D work! Just remember that to be original you must not repeat history. Be sure you have given careful critical consideration to the Xerox PARC "baroque period" of Cone Trees and Perspective Walls. Know ten reasons why 3D window managers are stupid, and then try to think of your own original reason why they might be good. Has anyone gotten close to the answer? What about those eerie green 3D hyperbolic tree things? That Infovis 2001 paper on state transition graphs?

Go, daring young 3D researcher, go!

Look at this: http://www.opencroquet.org/ Maybe it's whats needed to do the experimentation needed. -- MahyarMcDonald?



MeatballWiki | RecentChanges | Random Page | Indices | Categories
Edit text of this page | View other revisions | Search MetaWiki