CS 725/825 - Information Visualization & Data Analytics

Spring 2024: MW 3-4:15pm, ECSB 2120 and online via Zoom

Class Resources at GitHub     Syllabus (pdf)     Slides

Course Overview

Catalog Description: This course covers the theory and application of information visualization and of visual analytics, the science of combining interactive visual interfaces and information visualization techniques with automatic algorithms to support analytical reasoning through human-computer interaction. Research on visual perception, cognition, interactive visual interfaces, and visual analytics will be covered. Practical techniques for the display of complex multivariate data will be addressed. Course projects will require the development of interactive web-based interfaces to analyze and visualize real-world datasets.

Main Activities: During the semester, students will develop interactive visualizations using Vega-Lite and D3, read academic papers from IEEE VIS and other top visualization conferences, give class presentations on current topics in information visualization and visual analytics, and gain hands-on experience in visualizing real-world datasets.

Prereq: CS 625. What do I need to know coming into this course?


This course will be delivered in a hybrid method, with one face-to-face section in a traditional classroom and several online sections available:

CS 725 (MS) sections:

  • CRN 30958 - in-person
  • CRN 29143 - WC2 (in Hampton Roads)
  • CRN 29133 - WC5 (in Virginia, but outside of Hampton Roads)
  • CRN 29146 - WC7 (in the US, but outside of Virginia)

CS 825 (PhD) sections:

  • CRN 30959 - in-person
  • CRN 29149 - WC2 (in Hampton Roads)
  • CRN 29139 - WC5 (in Virginia, but outside of Hampton Roads)
  • CRN 29153 - WC7 (in the US, but outside of Virginia)

What Do I Need to Know Coming into This Course?

In CS 625 (Fall 2021 course materials), we use Tamara Munzner’s Visualization Analysis and Design (free ebook via ODU) and cover most of the chapters. The course objectives, which everyone who completes the course should be able to do, are as follows:

  • Use OpenRefine to explore and clean real-world data.
  • Explain the difference between exploratory (discover task) and explanatory (present task) visualizations.
  • Describe the channels of visual encoding and order them from most effective to least effective.
  • Identify a visualization where an inappropriate arrange design choice was made and explain why the choice was inappropriate.
  • Explain how different data types map most effectively to various visualization idioms (i.e., charts).
  • Explain the importance choosing an appropriate colormap.
  • Given a dataset, develop questions about the data that can effectively be answered with a visualization.
  • Critique and redesign an existing visualization.
  • Use Tableau, R, Vega-Lite, or other API or software to create effective standard charts, such as line charts, scatterplots, bar charts.
  • Use Tableau, R, Vega-Lite, or other API or software to create an effective visualization of real-world data.
  • Explain and defend the design choices that you made in creating your visualization.

In particular, for CS 725/825, you will be exclusively using Vega-Lite and D3, which builds upon the foundation of Vega-Lite. If you did not use Vega-Lite much in CS 625, please review those resources and practice by re-doing some of the assignments. There are several links to Vega-Lite resources in the Fall 2021 schedule.

If you were given an exception to the CS 625 prerequisite (given sparingly), in addition to the above resources, you should complete the HW0 setup tasks from Spring 2021 and study these resources from the textbook author: