current page



In this course we will study techniques and algorithms for creating effective visualizations based on principles from graphic design, visual art, perceptual psychology, and cognitive science. The course is targeted both towards students interested in using visualization in their own work, as well as students interested in building better visualization tools and systems.

In addition to participating in class discussions, students will have to complete several short programming and data analysis assignments as well as a final project. Students will be expected to write up the results of the project in the form of a conference paper submission.

There are no prerequisites for the class and the class is open to graduate students as well as advanced undergraduates. However, a basic working knowledge of, or willingness to learn, a graphics API (e.g., OpenGL, Java2D, Flash/Flex) and data analysis tools (e.g., Excel, Matlab, R) will be useful.

Final Project Presentations

Final Project presentations will be held Monday March 16, 4-6pm in the lobby of Gates Hall!


Mon Jan 5: No Class

Wed Jan 7: The Value of Visualization (Slides)

  Assigned: Assignment 1: Visualization Design (Due Mon 1/12, by end of day)


Mon Jan 12: Data and Image Models (Slides)

  Due: Assignment 1: Visualization Design (by end of day)

Wed Jan 14: Discussion of Visualization Designs (Slides)

  Assigned: Assignment 2: Exploratory Data Analysis (Due Mon 1/26, by end of day)


Mon Jan 19: Holiday, No Class

Wed Jan 21: Visualization Software (Slides)


Mon Jan 26: Perception (Slides)

  Due: Assignment 2: Exploratory Data Analysis

  Assigned: Assignment 3: Creating Interactive Visualization Software (Due Wed 2/11)

Wed Jan 28: Interaction (Slides)

Fri Jan 30: Programming Tutorial (Slides)


Mon Feb 2: Using Space Effectively (Slides)

Wed Feb 4: Graph and Tree Layout (Slides)

  Assigned: Final Project


Mon Feb 9: Color (Slides, Guest Lecture by Jason Chuang)

Wed Feb 11: Animation (Slides)

  Due: Assignment 3: Creating Interactive Visualization Software


Mon Feb 16: Holiday, No Class

Wed Feb 18: Identifying Design Principles (Slides, Guest Lecture by Maneesh Agrawala)

  Due: Final Project Proposals

Fri Feb 20: Talk by Stamen Design, 12:30-2pm, CS547 HCI Seminar


Mon Feb 23: Final Project Problem Presentations

Wed Feb 25: Final Project Problem Presentations

Fri Feb 27: Talk by Sep Kamvar, 12:30-2pm, CS547 HCI Seminar


Mon Mar 2: Final Project Problem Presentations

Wed Mar 4: Conveying 3D Structure (Guest Lecture by Wilmot Li)

Fri Mar 6: Talk by Jeffrey Heer, 12:30-2pm, CS547 HCI Seminar


Mon Mar 9: Collaborative Visual Analysis (Slides)

Wed Mar 11: Evaluation (Slides)


Mon Mar 16: Final Project Presentations, Gates Hall Lobby, 4-6pm

Wed Mar 18: Due: Final Project Reports

Course Information


Late Policy: We will deduct 10% for each day (including weekends) an assignment is late.

Getting started with this Wiki

This is the course wiki for cs448b. You will be using the course wiki to:

  • Post questions and debate readings
  • Publish your assignments
  • Share resources and links
  • Demo your course project

To contribute to the wiki, please log in using your Stanford SUNet ID and password.

Here are some starting points to familiarize yourself with wiki:

See HelpForBeginners to get you going, HelpContents for all help pages.