CS 7295: Data Visualization, Special Topics Course / Information Visualization


Spring 2022

Instructor: John Alexis Guerra Gómez

Students' homework submissions

Full Course Syllabus PDF


The purpose of Data Visualization is to discover insights from data, not just produce pretty pictures. In this course we will cover both the theory behind producing insightful data visualizations, as well as the practical components on how to create them. At the end of this course you will be able to:
  • Design efficient and insightful data visualizations based on perception theories and best practices from the research community.
  • Implement insightful and interactive, could based data visualizations using D3, Vega-Lite or Tableau.
  • Use a systematic approach for abstracting data analysis and visualization problems based on what and why is being visualized, and how is being represented. This will allow you to choose the right visualization for the tasks and data at hand beyond simple subjective rules of thumb.
  • Judge data visualizations based on their ability to help the target users address the proposed tasks on the data.
  • Conduct basic usability experiments to evaluate the value of a visualization with real users.
  • Work with real world clients on real world data problems to help them generate insights

Weekly Schedule

Week Date Topic Practice Homeworks Final Project
1 01/20 Class welcome and logistics Intro to Observable, and data in JS
2 01/27 Introduction

Readings: CH1 VAD

Loading data for visualization
3 02/03 What we visualize

Readings: CH2 VAD

Arquero.js and Basic Visualizations with Vega-Lite API HW1 Reusing the community visualizations
4 02/10 Why we visualize

Readings: CH3 VAD

5 02/17 How we visualize

Readings: CH5 VAD

Marks and Channels HW2 Basic Vega-Lite Viz
6 02/24 Rules of thumb

Readings: CH6 VAD

Interactivity Select team and topic
7 03/03 Midterm recap
8 03/10 Tabular, Multidimensional Data

Readings: CH7 VAD

Tableau HW2.1 (Optional) Midterm make up points Initial proposal (15%)
9 03/17 Spring Break
10 03/24 Temporal Data D3 Temporal Data HW3 Multidimensional data
11 03/31 Networks and Color

Readings: CH9 and CH10 VAD

D3 Force Simulation HW4 Temporal
12 04/07 Trees and Geo

Readings: CH8-10 VAD

D3 Trees and Spatial Data Project progress report and presentation (20%)
13 04/14 Trees and Geo

Readings: CH8-10 VAD


Readings: CH10-14 VAD

Manipulating Views

Readings: CH11 VAD

Usability experiment HW5 Trees and Networks
14 04/21 Faceting

Readings: CH12 VAD

15 04/28 Reducing
Usability Study Result (25%)
Finals 05/05 Project presentation/Blog/Demo (40%)

Slack Workspace infovis-neu.slack.com

All the class' messages are going to be sent using our Slack workspace. Students are encouraged to use slack to ask questions, coordinate and collaborate. Some guidelines:

  • Use #general for general issues, questions etc.
  • Use #project for proposing projects and requesting approval. All projects must be approved by the teacher.
  • Only the teaching assistants and the professor should create threads on #announcements. This channel is used for major announcements.
  • Use #random for sharing random stuff.

Videos and Lectures

For previous iterations of this course I have pre-recorded more than 60 technical videos where I show how to go from the theory concepts to actual visualizations using D3, the Vega-Lite API and Tableau.
There are also some recordings (in Spanish) of previous lectures


Concept %
Participation 20%
Midterm 15%
Final project
Homeworks 30%