Starting Spring 2021, this class has been re-numbered as 6.859.

Check out the Final Project Showcase »

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. Moreover, visual representations may help engage more diverse audiences in the process of analytic thinking.

By the end of this course, you should expect to be able to:

  1. Design, evaluate, and critique visualization designs.
  2. Wrangle and explore datasets through visualization using Trifacta Wrangler and Tableau.
  3. Understand visualization techniques and theory.
  4. Implement interactive data visualizations using Vega-Lite, and D3.js.
  5. Develop a substantial visualization project.

Schedule & Readings

Week [$index + 1]: [theme]



Individual assignments. The first three assignments are solo assignments, and should be completed without collaboration. You are encouraged to ask the instructor and/or TAs for advice during office hours, and to use Piazza to obtain answers to questions from other students.

Team projects. Team projects, of course, encourage collaboration. You are encouraged to work together on all parts of the project, and must ensure that every team member is involved in all aspects of the project (design, coding, and documentation). Although the team will receive a single grade, each team member will be asked to identify their own work product to ensure equitable divison of labor. Participation in team check-in meetings and project presentations will be evaluated on an individual basis.

Reuse of third-party material. Unless otherwise stated in an assignment, you are free to use any third-party code, whether as libraries or code fragments, and to adopt any idea you find online or in a book as long as it is publicly available and appropriately cited (see the section on code in the MIT Handbook on Academic Integrity for details).

Lateness. You have 4 slack days, which you can use as you wish for assignments 1–4. These days are to be used for minor illnesses, special occasions (such as religious holidays, interviews and sports meet events), and unexpected problems. Additional extensions will be granted only for serious medical issues with a written note from S^3 (for undergraduate students), the EECS graduate student office (38-444), or the MIT Office of Graduate Education. Late submissions not covered by a slack day will incur a penalty of 10% of the total available grade for each day of lateness. Note also that while we will endeavor to return graded work to you as soon as possible, if you use slack days you may miss a grading cycle and receive feedback in the following week.

Resubmitting Assignments. You may resubmit any assignment with a short (1 paragraph) summary of changes to potentially earn back 50% of the points lost in the original submission. Resubmissions must occur within 7 days of the original grades being released, and must use the same process as the initial submission. Slack days may not be applied to extend the resubmission deadline. The teaching staff will only begin to regrade assignments once the Final Project phase begins, so please be patient.

Class Participation

This course is mixes traditional lectures with more hands-on design exercises, interactive activities, and project presentations. Your class participation grade assesses your engagement across this spectrum of activites, and also considers your participation in posing and answering questions on the Piazza forum.

Reading Commentaries

Most lectures have one required and several optional readings associated with it. Lectures will assume that you have read, and are ready to discuss, the day's required reading. To facilitate the conversation, you are expected to submit a 1–2 paragraph commentary about each required reading on its nb page by noon on the day of the lecture. You may mark your commentary as "Anonymous to students" if you prefer. We will drop your two lowest commentary scores for the semester (e.g., you may choose to skip two readings without penalty).

Commentaries should not merely summarize the reading, but rather should exhibit one or more of the following:


Material for this class has been adapted from classes taught by Jeffrey Heer at the University of Washington, Maneesh Agrawala at Stanford University, Hanspeter Pfister at Harvard University, Tamara Munzner at the University of British Columbia, Jessica Hullman and Nick Diakopoulos at Northwestern University, Niklas Elmqvist at the University of Maryland, College Park, Enrico Bertini at New York University, and Sheelagh Carpendale at Simon Fraser University. Thanks also to Michael Correll at Tableau Research. The class draws heavily on materials and examples found online, and we try our best to give credit by linking to the original source. Please contact us if you find materials where credit is missing or that you would rather have removed.