current page



The world is awash with increasing amounts of data, and we must keep afloat with our relatively constant perceptual and cognitive abilities. Visualization provides one means of combating information overload, as a well-designed visual encoding can supplant cognitive calculations with simpler perceptual inferences and improve comprehension, memory, and decision making. Furthermore, visual representations may help engage more diverse audiences in the process of analytic thinking.

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., R, Excel, Matlab) will be useful.

Lectures: Tuesday & Thursday, 1:35-3:05pm, Mudd Chemistry Building, Braun Lecture Hall

Note that lectures start slightly later than is posted in the course catalog.

The Final Project Poster Session will be held Tue Dec 11, 5-7pm in Wallenberg Hall


Tu Sep 25: The Value of Visualization (Slides)

  Assigned: Assignment 1: Visualization Design (Due Tu 10/2, by 7am)

Th Sep 27: Data and Image Models (Slides)


Tu Oct 2: Visualization Design (Slides)

  Due: Assignment 1: Visualization Design (by 7am)

Th Oct 4: Exploratory Data Analysis (Slides)

  Assigned: Assignment 2: Exploratory Data Analysis (Due Tue 10/16, by 1pm)


Tu Oct 9: Multidimensional Data Visualization (Slides)

Th Oct 11: Graphical Perception (Slides)


Tu Oct 16: JavaScript / D3 Tutorial (Slides)

  Due: Assignment 2: Exploratory Data Analysis (by 1pm)

  Assigned: Assignment 3: Interactive Visualization (Extension!: Due Friday 11/2, by 5pm)

Th Oct 18: Graph Layout and Network Analysis (Slides)


Tu Oct 23: Interaction (Slides)

Th Oct 25: Animation (Slides)


Tu Oct 30: Mapping & Cartography (Slides)

Th Nov 1: Color (Slides)

  Assigned: Final Project

Fri Nov 2:

  Due: Assignment 3: Interactive Visualization (by 5pm)


Tu Nov 6: Design Critiques (Slides)

Th Nov 8: Using Space Effectively (Slides)

  Due: Final Project Proposal (by end of day)


Tu Nov 13: Narrative Visualization (Slides)

Th Nov 15: Text Visualization (Slides)


Tu Nov 20: Thanksgiving Break

Th Nov 22: Thanksgiving Break


Tu Nov 27: Final Project Presentations

Th Nov 29: Visual Analysis, Collaboration & History (Slides)


Tu Dec 4: Evaluation (Slides)

Th Dec 6: Final Project Check-In


Tu Dec 11: Final Project Poster Session (5-7pm)

Wed Dec 12: Due: Final Project (by end of day)


Course Information

  • Course Meetings

  • Instructor: Jeffrey Heer (jheer [at]

    • Office Hours: Tue 11am-12pm Gates 375, or by appointment
  • Course Assistants:

    • Amy Jang (insunj [at]
      • Office Hours: Fri 3-5pm Coupa Y2E2, or by appointment Wed 3-5pm

    • Megan Kanne (mkanne [at]
      • Office Hours: Mon 3-5pm Coupa Y2E2, or by appointment Fri 1-3pm

    • Eli Marschner (eli [at]
      • Office Hours: Wed 1-3pm Coupa Y2E2, or by appointment Mon 1-3pm

  • Required Textbooks:


  • Course Staff Email: cs448b [at] cs [dot] stanford [dot] edu


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

Plagiarism Policy: Assignments should consist primarily of your original work. Building off of others' work--including 3rd party libraries, public source code examples, and design ideas--is acceptable and in most cases encouraged. However, failure to cite such sources will result in score deductions proportional to the severity of the oversight.

Useful Resources

If you have an interesting visualization tool, resource, or announcement that you would like to share, please post it to the UsefulResources page.

If you are looking for project partners then have a look at the ProjectPartners page.

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.