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


Spring 2021

Instructor: John Alexis Guerra Gómez

Students' homework submissions

List of final projects


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

WeekDateTopicPracticeHomeworksFinal Project
101/21Class welcome and logistics
201/28 Introduction

Readings: CH1 VAD

Intro to Observable, and data in JS
302/04What we visualize

Readings: CH2 VAD

Loading data for visualization
402/11Why we visualize

Readings: CH3 VAD

Arquero.js and Basic Visualizations with Vega-Lite APIHW1 Reusing the community visualizations
502/18How we visualize

Readings: CH5 VAD

602/25Rules of thumb

Readings: CH6 VAD

TableauHW2 Basic Vega-Lite Viz
703/04Midterm recap
803/11Tabular, Multidimensional Data

Readings: CH7 VAD

Arquero.jsHW2.1 (Optional) Midterm make up points
903/18Temporal DataD3 Temporal DataHW3 Multidimensional dataSelect team and topic
1003/25Networks and Color

Readings: CH9 and CH10 VAD

D3 Force SimulationHW4 TemporalInitial proposal (15%)
1104/01Trees and Geo

Readings: CH8-10 VAD

D3 Trees and Spatial Data
1204/08Manipulating Views

Readings: CH11 VAD


Readings: CH12 VAD

HW5 Trees and Networks

Readings: CH10-14 VAD

Usability experiment
1404/22Project progress checkpoint:
  • Usability Study Result (25%)
  • Project report and presentation (20%)
Finals04/29Project 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


Final project
Call for proposals Call for proposals
Submit a project proposal