CAS 4150, Spring 2025
Introduction to Data Visualization

Department of Computer Science and Engineering
Yonsei University

Mon at 1:00 - 3:00pm & Wed at 2:00 - 3:00pm
D408

Prof. Minsuk Kahng
Assistant Professor, Department of Computer Science and Engineering
E-mail: [email protected]
Website: https://minsuk.com

Course Description

How can we help people make sense of large datasets and discover insights? Data visualization is a powerful tool widely used to analyze complex datasets, communicate findings, and support decision-making. This course introduces its principles and techniques, focusing on transforming various types of raw data into effective visual representations and applying interactive techniques to explore data from diverse perspectives. Students will gain hands-on experience building interactive data visualizations using JavaScript frameworks, through in-class exercises and a term project with real-world data.

어떻게 하면 사람들이 방대한 데이터를 쉽게 이해하고 흥미로운 통찰(insights)을 얻을 수 있을까? 데이터 시각화는 복잡한 데이터를 분석하고, 효과적으로 전달하며, 의사결정을 돕는 강력한 도구입니다. 이 과목에서는 데이터 시각화의 기본 개념인 여러 형태의 데이터를 시각적으로 표현하는 방법(visual representation)과 사용자가 데이터를 다양한 관점에서 탐색할 수 있도록 돕는 상호작용(interaction) 기법을 배웁니다. 또한, 수업에서 진행하는 간단한 실습과 실제 데이터를 활용한 학기 프로젝트를 통해 JavaScript로 직접 인터랙티브 시각화를 구현합니다.

This course will be taught in Korean.

Learning Objectives

At the completion of this course, students will:

  1. Understand the fundamental principles of data visualization;
  2. Learn different ways to represent data visually and critically assess their effectiveness;
  3. Gain experience in designing interactive data visualizations; and
  4. Develop skills to build web-based interactive data visualizations.

Course Schedule Tentative

This is a tentative schedule. For up-to-date information, please check out Canvas.
Week Topic Assignments
1 Course Introduction * Pre-Course Survey
Data Abstraction
2 Fundamental Graphs * HW 1: Visualiation Design
Graphical Encodings (1)
3 Graphical Encodings (2)
Exploratory Data Analysis and Tableau * HW 2: Exploratory Data Analysis
4 Rule of Thumb, Tufte's Principles, Pie Charts
Perception and Color
5 Programming (1): HTML/CSS and SVG
Programming (2): JavaScript Frameworks and React
6 Programming (3): Vega-Lite and D3.js * Projects: Proposals
Interaction (1)
7 Interaction (2)
Multi-Dimensional Data
8 Mid-Term Exam
9 High-Dimensional Data * HW 3: Programming for Interactive Visualization
Projects: Proposals
10 Text and Documents
Human-Centered Design Process and Prototyping * Projects: Posters with Prototyping
11 Hierarchical and Network Data
Projects: Posters
12 Geographical Data
Evaluation * Projects: Final Presentations
Guest Lecture (1)
13 Guest Lecture (2)
Projects: Final Presentations (1)
14 Projects: Final Presentations (2)
Projects: Final Presentations (3)
15 Final Exam

Grading

Your performance will be evaluated via exams, individual assignments, team projects, and participation. The distribution of grading will be as follow (subject to change):

  • Mid-Term Exam: 25%
  • Final Exam: 25%
  • Individual Homework: 20%
  • Team Projects: 20%
  • Participation: 10%

Projects and Assignments

Group Project

By the end of the term, your team will develop a web application that visualizes large-scale real world data, as a final product of your group project. It will likely be a single-page web application that runs on web browsers, written in JavaScript based on what you will learn from lab sessions. To help you learn how to implement such a web-based visualization tool, we will have lab sessions and an individual programming assignment.

The team receives one grade for the group project. However, allocation of the grade among team members will in some cases not be equal, if team members do not contribute relatively equally to the effort. It will be calibrated based on project feedback and evaluation form around the end of the term.

Individual Homework
  1. Visualization Design
  2. Exploratory Data Analysis using Tableau
  3. Programming for Interactive Visualization
In-class Programming Activities

There will be several in-class activities. Starting in Week 3, there will be lab sessions on programming. Students will be expected to complete programming exercises and submit them during class. They can discuss with peers and freely ask questions to the instructor during class. In order to work on these activities, students are expected to bring their own laptop to class.

Announcements and Questions

Many announcements will be made during in-person class meetings.

We use LearnUs for additional announcements, assignment submissions, grading, etc.

We use GitHub Classroom for managing all the programming assignments.

This website will be used only for syllabus. For up-to-date information (e.g., schedule), please check LearnUs.

TA & Office Hours

배성재

Acknowledgments

This course is designed based on a number of visualization courses offered in other universities. Below I list some of them. I especially thank Professors Enrico Bertini and Jeffrey Heer for sharing their materials with me.

I also thank Tableau for providing us with student license for Tableau Desktop.