CS 529 -- Visual Data Science -- is an introductory research-oriented graduate-level course offerred at the Electronic Visualization Laboratory, Department of Computer Science. The course was first offered in Fall 2018, as a Special Topics Course CS594, and received excellent reviews (4.7/5). Since then, the course has been offered once a year.
Course Description
This course is an introduction to key design principles and techniques for interactively visualizing and analyzing data in data science. The major goals of this course are to understand how human perception and cognition can help in the analysis and understanding of complex data, how to design and evaluate effective visual representations of data to support analysis, how to tell a compelling data story, and how to create your own interactive visual data analysis using web-based frameworks.
Content
Learn how to do visual data science research, from soup to nuts, in one semester. Or, why not, how to use visualization and web programming to analyze your own data! Learn how to engineer requirements and build a software system for data analysis that humans appreciate. Learn the core principles of web programming, so you can transfer that knowledge to new, emerging .js frameworks. Learn the principles of web visual design, so you can build better human-computer interfaces.
Prerequisites
This class is open to CS students and to students from other disciplines (biology, geology, history, physics etc.) who are interested in collaborating with computer scientists.
Prereqs: CS students: programming experience; non-CS students: project ideas and some programming experience. Computer graphics experience is welcome, but not required.
Structure
The class consists of readings, quizzes, in class exercises, discussions, lectures, guest-lectures, a few lightweight assignments, and a final project.
The class schedule, the assigned readings, and the course assignments are (and will continue to be) posted through the class syllabus and through Piazza.
Student deliverables
The students will be required to complete two assignments, quizzes, a project-based midterm and final exam, and to actively participate in class and Piazza (an online Q&A forum) discussions. Graduate students who are interested in research, and in particular EVL doctoral students are also expected to read and comment on research papers. For the final project, the students will have to submit a proposal within the first half of the course, a final report at the end of the class, and they will be asked to give a public demonstration of the project.
Objectives
After successful completion of this course, students will be able to:
- Understand the relationship between visual analysis and data science.
- Use the principles of human perception and cognition in visual data analysis
- Engineer requirements for visual data science problems across application domains.
- Apply a structured design process to create effective data visualizations.
- Conceptualize ideas and interaction techniques using sketching.
- Critically evaluate data visual representations and suggest improvements and refinements.
- Create web-based interactive visualizations using JavaScript frameworks, D3 and Three.js.
- Have a good working knowledge of Jupyter Notebooks and Pandas.
- Have a good working knowledge of web programming and javascript, and be able to easily pick up other .js frames.
- Work effectively as a team; listen effectively; give and receive feedback effectively.
- Communicate orally effectively.