CSE442 Data Visualization (Fall 2020)

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, perceptual psychology, and cognitive science. Students will learn how to design and build interactive visualizations for the web, using the Vega-Lite and D3.js (Data-Driven Documents) frameworks.

In addition to class discussions, students will complete visualization design and data analysis assignments, as well as a final project. Students will share the results of their final project as both an interactive website and a video presentation.


Learning Goals & Objectives

This course is designed to provide students with the foundations necessary for understanding and extending the current state of the art in data visualization. By the end of the course, students will have gained:

Schedule & Readings

Week 0

Week 1

Tue 10/6 Data & Image Models Slides

Week 2

Fri 10/16 Tableau Tutorial - 1:30-3:00pm (Optional)

Week 3

Thu 10/22 Narrative (Matt Conlen, UW & New York Times) Slides

Week 4

Thu 10/29 D3.js Deep Dive
  • REQUIRED Notebook: Introduction to D3, Part 2. (Note: we will work through this in class, but we encourage you to skim it ahead of time!)
  • REQUIRED Chapters 9, 10 in Interactive Data Visualization for the Web, 2nd Edition. Scott Murray.

Week 5

Thu 11/5 Maps Slides

Week 6

Thu 11/12 Prototype Demos Slides
Assigned: Peer Evaluation (Due: Mon 11/16)

Week 7

Week 8

Tue 11/24 Thanksgiving Holiday
Thu 11/26 Thanksgiving Holiday

Week 9

Week 10

Thu 12/10 Final Project Showcase Slides



Late Policy: We will deduct 10% for each day an assignment is late. Please contact the instructors well in advance to request extensions if needed.

Plagiarism Policy: Assignments should consist primarily of 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.

Religious Accommodation: Washington state law requires that UW develop a policy for accommodation of student absences or significant hardship due to reasons of faith or conscience, or for organized religious activities. The UW’s policy, including more information about how to request an accommodation, is available here: Religious Accommodations Policy. Accommodations must be requested within the first two weeks of this course using the Religious Accommodations Request form.

Class Participation

It is important to attend the lectures (or if you are unable, to watch the recordings) and read the readings. Each lecture will assume that you have read and are ready to discuss the day's readings.

Class participation includes both in-lecture activities (as is feasible) and engagement on the course discussion site (Ed). Up through week 8, all enrolled students are required to submit at least 1 substantive discussion post per week related to the course readings or lecture material. Each student also has 1 pass for skipping comments.

Good comments typically exhibit one or more of the following:

In addition, we will post short quizzes to reinforce important concepts. The quizzes are not graded (your score on a quiz will not affect your course grade), but you are required to complete the quiz as part of your course participation.


See the resources page for visualization tools, related web sites, and software development tips.


Questions should be posted on the course discussion site (Ed). If you have a private question, please email the instructors at cse442@cs or discuss it at office hours.