next up previous
Next: About this document ...

CS525D - Data Visualization - Spring, 2006

Prof. Matthew Ward
FL134, 831-5671, matt@cs.wpi.edu
Office Hours: Tuesday and Friday at 2, Thursday at 10, Monday at 3, others by appointment

Overview: Visualization is the graphical communication of data and information for the purposes of presentation, confirmation, and exploration. For thousands of years, images have been used to convey numbers, concepts, and relationships using techniques such as maps, icons, graphs, and other visual forms. In the past 2 decades, visualization has evolved into a discipline, drawing from such fields as graphics, human-computer interaction, perceptual psychology, and art.

The goal of this course is to expose students to the field of data visualization and familiarize them with the stages of the visualization pipeline, including data modeling, mapping data attributes to graphical attributes, existing visualization techniques, tools, and paradigms, perceptual issues, and evaluating the effectiveness of visualizations for specific data, task, and user types.

Textbook: There is no required text for this course, but I will be assigning regular readings from articles and books that I will hand out or put on reserve in the library. I will expect reading beyond that required for project work will require 3-4 hours per week.

Additional Resources: All documents for the course will be made available in the directory /cs/cs525D/doc on the CCC file servers.

Projects: There are four types of projects that you will be expected to complete for the course. You need to do one project of each type, for a total of 4 projects. Each should require approximately 20-25 hours of time over a 3 week period (this is the expected amount of effort you should put in for a good grade). The types of projects are as follows:

implement/demonstrate a visualization technique:
One of the best ways to truly understand a visualization technique is to implement a version of it yourself. Clearly, your project doesn't need to be of commercial quality, but it should be able to import data sets in a particular format (which you can decide on) and allow some level of user interaction. Don't forget to include labels, keys, grids, or whatever other auxilliary information a user might need to interpret the results. You can choose the technique to implement based on material covered in class or by searching the literature (the book by Keller and Keller gives a large number of techniques, for example). Your report should describe the technique, your implementation, and a description of how to use it. While you can implement the method in the language of your choice, it would be nice if many of the methods were implemented in Java.

review/present a paper:
Each year more than a hundred papers are published in the area of visualization. Some are in conference proceedings (see several listed below), while others can be found in journals such as the IEEE Transactions on Visualization and Computer Graphics or the Journal of Information Visualization. Spend a few hours skimming articles on visualization until you find one that particularly appeals to you. It could be describing a specific technique, a framework for visualization systems, mechanisms for evaluating visualizations, or even a unique application. Read through the paper several times until you feel comfortable with its contents. This may involve reading other papers referred to by your selected paper to gain sufficient background to understand it well. Then write a description of the paper that you can use to present to the class. Please avoid just copying or paraphrasing sections of the paper - your report should be in your own words.

design/conduct an evaluation or perceptual experiment:
Designing effective visualizations has a significant component of experimentation in it, and thus it is useful to develop skills in designing and administering user studies. One type of study involves comparing two or three alternative ways of presenting or interacting with visually depicted information. For example, you might compare two different plot types or three ways of selecting data points of interest. Another type of study examines the limitations of the human visual system via optical illusions or benchmarks to measure the accuracy at which we perceive or can measure a specific visual phenomena. In both cases, you need to:
  1. develop a hypothesis.
  2. design the test.
  3. create the visualizations.
  4. administer the user study to several subjects.
  5. evaluate and document the results.
I expect most of your subjects will be students in this class. 3 or 4 subjects will be fine, but obviously the more people you use, the more confidence you can have in the results.

review/demonstrate an existing visualization package:
There are many visualization packages (commercial and freeware) available at present; I list a number of them below. This project would entail downloading and familiarizing yourself with the system to the point where you can demonstrate it to the class. This MUST involve creating or finding a dataset that is not packaged with the system and describing and/or exhibiting what can be learned from the data set using the tool you've selected. Don't just cut and paste from any tutorial provided by the developers of the tool - you must achieve sufficient mastery of the software to be able to teach others how it works.

For each project, you should develop a web page describing your topic. I will collect them and put the pages into a repository similar to the one I've developed for CS563. In addition, you should be prepared to give a 10-15 minute presentation on any of your projects. These presentations will commence in week 3 of the semester, so you should plan to present every third week. The presentation may include a demonstration, a perceptual experiment, or whatever you feel will benefit the educational experience for your audience.

Exams: There will be no exams given for this course.

Grading: Your grade will be based on your projects (web page and presentation) and class participation. Try to come up with at least 1 question to ask each presenter.

Facilities: You can use whatever computer you have at your disposal, as long as it supports at least 256 colors and your program can be demonstrated on a machine on campus.

Software Resources: OpenGL, Java2D, Java3D, or X can be used for software development. Basically whatever language you used in your graphics course will do. In most cases, you can get by with 2-dimensional graphics, though for some types of visualization, 3-D is essential. Some visualization tools that you can download and test include:

  1. XmdvTool - http://davis.wpi.edu/xmdv
  2. SpiralGlyphics - http://davis.wpi.edu/ matt/projects/SpiralGlyphics/
  3. OpenDX - http://www.opendx.org
  4. DeVise - http://www.cs.wisc.edu/ devise/
  5. Treemap - http://www.cs.umd.edu/hcil/treemap3/
  6. VTK - http://public.kitware.com/VTK/
  7. Xgobi - http://www.research.att.com/areas/stat/xgobi/
  8. VisDB - http://www.dbs.informatik.uni-muenchen.de/dbs/projekt/visdb/visdb.html
  9. CViz - http://www.alphaworks.ibm.com/tech/cviz
  10. VolVis - http://www.cs.sunysb.edu/ vislab/volvis_home.html
  11. extra points for finding others (other than WPI-developed)

Books Available from Prof. Ward:

  1. Spence, Robert. Information Visualization. Addison-Wesley, 2001.
  2. Ware, Colin. Information Visualization: Perception for Design. Morgan-Kaufmann, 1999.
  3. Chen, Chaomei. Information Visualization and Virtual Environments. Springer, 1999.
  4. Keller, Peter, and Keller, Mary. Visual Cues: Practical Data Visualization. IEEE Press, 1993.
  5. Tufte, Edward. The Visual Display of Quantitative Information. Graphics Press, 1983.
  6. Tufte, Edward. Envisioning Information. Graphics Press, 1990.
  7. Tufte, Edward. Visual Explanations. Graphics Press, 1997.
  8. Lichtenbelt, Barthold, et. al. Introduction to Volume Rendering. Prentice-Hall, 1998.
  9. Schroeder, Will, et. al.. The Visualization Toolkit (2nd edition). Prentice-Hall, 1998.
  10. Card, Stuart, et. al.. Readings in Information Visualization, 1999.
  11. Bederson, Ben, and Shneiderman, Ben. The Craft of Information Visualization, 2002.
  12. Harris, Robert. Information Graphics, a Comprehensive Illustrated Reference, 1999.
  13. Woolman, Matt. Digital Information Graphics, 2002.
  14. Thomas, James, and Cook, Kristin. Illuminating the Path: the Research and Development Agenda for Visual Analytics, 2005.
  15. Kosslyn, Stephen. Elements of Graph Design, 1994.

  16. Fayyad, Usama, et. al.. Information Visualization in Data Mining and Knowledge Discovery. Morgan-Kaufmann, 2002.
  17. Palamidese, Partrizia. Scientific Visualization: Advanced Software Techniques. Ellis Horwood, 1993.
  18. Nelson, Gregory, et. al.. Visualization in Scientific Computing. IEEE CS Press, 1990.
  19. Nelson, Gregory, et. al.. Scientific Visualization: Overviews, Methodologies, Techniques. IEEE CS Press, 1997.

  20. Proceedings of IEEE Visualization Conference. 1990 - present.
  21. Proceedings of IEEE Symposium on Information Visualization. 1995 - present.
  22. Proceedings of International Conference on Information Visualization. 1999, 2005.
  23. Proceedings of the Eurographics Visualization Symposium. 2003, 2004.
  24. Proceedings of Volume Visualization and Graphics Symposium. 1998, 2000, 2002.
  25. Proceedings of Parallel Visualization and Graphics Symposium. 1999.
  26. Proceedings of Parallel and Large-Data Visualization and Graphics Symposium. 2001.

Tentative Schedule:

January 18:
Introduction and Foundations
January 25:
Data Models
February 1:
Perceptual Issues. Group A, Project 1
February 8:
Perceptual Issues. Group B, Project 1
February 15:
Visualization Techniques and Taxonomies. Group C, Project 1
February 22:
Spatial Data Visualization Techniques. Group A, Project 2
March 1:
Spatial Data Visualization Techniques. Group B, Project 2
March 8:
Non-Spatial Data Visualization Techniques. Group C, Project 2
March 15:
Non-Spatial Data Visualization Techniques. Group A, Project 3
March 22:
Interaction Techniques. Group B, Project 3
March 29:
Interaction Techniques. Group C, Project 3
April 5:
Designing Visualizations. Group A, Project 4
April 12:
Designing Visualizations. Group B, Project 4
April 19:
Systems, Applications, Future Directions. Group C, Project 4
April 26:
Makeup class, in case of snow

Data Sources:

  1. National Center for Health Statistics - http://www.cdc.gov/nchs/datawh/ftpserv/ftpdata/ftpdata.htm
  2. National Archive of Criminal Justice Data - http://www.icpsr.umich.edu/NACJD/
  3. StatLib at CMU - http://lib.stat.cmu.edu/
  4. Links to more statistics datasets - http://it.stlawu.edu/ rlock/maa51/data.html
  5. Everything about baseball - http://www.baseball1.com/
  6. Volume data sets - http://www.siggraph.org/education/materials/vol-viz/volume_visualization_data_sets.htm
  7. Weather data - http://www.ncdc.noaa.gov/oa/climate/climatedata.html
  8. UC Irvine KDD Archive - http://kdd.ics.uci.edu/
  9. UC Irvine Machine Learning Archive - http://www.ics.uci.edu/ mlearn/MLRepository.html
  10. Inter University Consortium for Political and Social Research - http://www.icpsr.umich.edu/
  11. InfoVis and Vis conference contest data sets - conference web sites
  12. Border bouncing data from NVAC - see Prof. Ward



next up previous
Next: About this document ...
Matthew Ward 2006-01-18