views:

19

answers:

1

This is hardly a programming question, so if you're a purest feel free to read no further.

Are there any good examples on how to display multidimensional data on a computer screen? I don't know how many dimensions there will be, though anything more than 10 I suspect will be rare. I can think of the obvious solution, but I don't know if this results in truly humanly readable feedback:

  1. map first dimension onto x axis
  2. map second dimension onto y axis
  3. map third dimension onto dot Radius
  4. map fourth dimension onto dot Red component
  5. map fifth dimension onto dot Green component
  6. map sixth dimension onto dot Blue component
  7. map seventh dimension onto dot spiky-edge-property

Manual sketch

Does anyone know of any existing software that elegantly handles this problem?

+2  A: 

Mapping three dimensions into R, B and G respectively will be very hard for most people to interpret (Cyan is a mix of which colors again...?). You could get one dimensions with color by using a fixed color and a transparency value or a grey scale. For the border you could use both transparency and thickness (but don't let it be 100% transparent or they won't see the thickness). Instead of spikiness you might consider number of edges... start with a pentagon, hexagon, octagon, ... until you come very close to a circle. Whether this will work depends on the granularity you need. Few people can tell the difference between a 30 or a 32-sided polygon.

You could add another symbol inside the "circle" to represent another dimension (e.g. a triangle with varying size as a fraction of the circle's size, varying border color/width/transparency, varying fill color/transparency).

You could also consider a 3-D plot with all of the objects grounded on the X-Y plane, but having a height that corresponds to one dimension.

The NIH outline an approach for Polychromatic Plots to handle up to 5D.

Eric J.
Indeed, I think RGB mapping is probably hard to see. Perhaps HSV is better... I won't be able to use different sided polygons though, since that does not represent a continuous spectrum. I can't draw a polygon with 4.6 sides (well I could, but it's hard to see). Thank you for the link.
David Rutten
If you need a continuous spectrum, you could create ovals rather than circles by having independently sized X and Y.
Eric J.