Data Visualization
Welcome to Data Visualization CS573!
- Start date: January 10, 2024
- End date: May 1, 2024
Course Description:
This course is all about data visualization; the art and science of turning data into compelling interactive graphics. We’ll explore how to analyze, design and construct data visualizations based on data available and tasks to be achieved. This process includes data processing, mapping data attributes to visual marks and channels, and strategic visual encoding based on known properties of visual perception as well as the data and tasks at hand. We will also go deep on modern JavaScript development for interactive Web-based graphics. Students will create their own data visualizations using Web technologies and Open Source libraries including D3.js. This course will be JavaScript-heavy, so a willingness to learn JavaScript and related technologies is a must.
Required Textbook:
- There is no required textbook for this course
- I will be providing reading material from my upcoming textbook "Constructing Visualizations" as PDFs accessible through Canvas each week.
Reference Material (optional):
- Visualization Analysis & Design by Tamara Munzner (2014) (ISBN 9781466508910)
- Semiology of Graphics by Jacques Bertin (2010)
- Previous versions of the course
Prerequisites:
- Some programming experience in any language
- Ideally a course on computer graphics, but this is not strictly required
- Willingness to invest in becoming proficient in JavaScript
- Interest in interactive data visualization!
Learning Outcomes:
By the completion of this course, learners will be able to:
- Analyze and critique existing visualizations based on data visualization theory
- Design and build new data visualizations
- Conduct exploratory data analysis using visualization
- Craft visual presentations of data for effective communication
- Use knowledge of perception and cognition to evaluate visualization design alternatives
- Design and evaluate color palettes for visualization based on principles of perception
- Clean and prepare data for visualization
- Apply data transformations such as aggregation and filtering
- Identify opportunities for application of data visualization in various domains
- Develop interactive visualizations for the Web
Communication:
- Primary communication will be via Discord
- If another student may be able to answer your question, please post it in Discord
- Direct message me in the Discord for quick communication
- If you have a question that only I can answer, and is not suitable for messaging in Slack, email me at ckelleher@wpi.edu. I will respond within 24 hours on weekdays.
Course Approach
- We will use Canvas for content presentation and submission of assignments
- Course material will be delivered weekly as Canvas modules including video, assigned reading, and links to external resources such as lectures on YouTube, articles, examples, and tutorials
- Live interactive lectures will be held
- Weeks begin on Wednesday mornings and close on Tuesdays at 11:59pm
- Assignments submitted later than 11:59pm on Tuesdays of the given week will be considered late
- The course will run for 15 weeks
- The WPI calendar will be respected regarding holidays and breaks
- Students will be expected to put in approximately 10-15 hours of work per week
Course Content:
The course will roughly be 50/50 theory and practice. The theory part will come from our textbook. The practice part will be original material developed by me. I'm going to teach you how to use the tools that I would use in a professional setting, namely modern web development tools such as HTML, CSS, JavaScript, and D3.js. The flow of the course is designed to roughly match the phases that a real world data visualization project goes through. This is why we jump around the text rather than following it linearly.
(Details subject to change)
Week |
Theme |
Homework Assignments/Projects |
1 |
Introduction |
Reading:
Lectures:
Assignments:
|
2 |
Get the Data |
Reading:
Lectures:
Assignments:
|
3 | Data Transformation |
Reading:
Lectures:
Assignments:
|
4 |
Sketch the Vision
|
Reading:
Lectures:
Assignment:
|
5 |
Scatter Plots |
Reading:
Lectures:
Assignment:
|
6 |
Axes & Labels |
Reading:
Lectures:
Assignment (Project):
|
7 |
Line Charts, Area Charts, and Bar Charts |
Reading:
Lectures:
Assignment (Project):
|
8/9 |
Maps |
Reading:
Lectures:
Assignment (Project):
|
10 |
Single View Interactions |
Reading:
Lectures:
Assignment (Project)
|
11 |
Trees and Graphs |
Reading:
Lectures:
Assignment (Project):
|
12 |
Small Multiples |
Reading:
Lectures:
Assignment (Project): Create a viz that uses small multiples with your data. |
13 |
Multiple View Interactions |
Reading:
Lectures:
Assignment (Project): Add multiple view interaction in your project.
|
14 |
Multidimensional Filtering and Aggregation |
Reading:
Lectures:
Assignment (Project): Use multidimensional filtering and aggregation in your project. |
15 |
Finishing Touches |
Reading:
Lectures:
Assignment (Project): Finish your project and make a video presentation of it. |
Note: Weekly assignments may be subject to change.
Stretch goals for topics to cover:
- StreamGraph
- Labeling Area Charts
- Smoothing
- Scatter Plot Variants: Position, Size, Color
- Merimekko Chart
- Radial Bar Chart Variants
Course Requirements:
- Grade Determination Breakdown
|
Percentage |
Assignments |
50% |
Project |
30% |
Participation |
20% |
Course incompletes may be granted if the major part of the course is completed; however, no additional credit can be given for missed class discussions or teamwork beyond the end of the course. In addition, in the case of an incomplete, the student is responsible for handing in the final work within the WPI required timeframe of one (1) year. After this time, an incomplete grade changes to a failing (F) grade
- Assignments
We will have weekly assignments, due by the end of the week (Tuesday 11:59PM). Submission of the assignments will be inside the Canvas online system. Many assignments will involve submission of a link to your work in an external system such as VizHub. Feedback can be expected within two weeks after submission.
- Late Work Policy
Late work will be accepted, with a 10% grade penalty for each day that it is late.
Resubmissions based on initial grading and feedback will be re-graded if submitted before the deadline. You may re-submit as many times as you like before the deadline. After the deadline for an assignment, it will only be graded once and the grade will not be updated after subsequent resubmissions. Please submit a few days ahead of the deadline so you can get feedback, resubmit based on feedback, and maximize your grade.
- Class Participation Expectations and Criteria
Our Discord channel will function as participatory space for discussion, like a classroom. Students are encouraged and expected to actively participate in discussions there. Sometimes, assignments will include a discussion participation dimension. This may involve sharing your work with the class, posting your response to a specific question, or responding to the posts of others (peer feedback). Each assignment will include specific grading criteria with regard to participation.
Technical Requirements:
- Chrome Web Browser
- GitHub account
Library Access:
As a student at WPI, you have access to a variety of resources through the library. Use the link here to access databases, e-journals, and/or e-books. You will be required to log in with your WPI username and password to access materials.
POLICIES
Academic Integrity:
You are expected to be familiar with the Student Guide to Academic Integrity at WPI that is downloadable from here. Consequences for violating the Academic Honest Policy range from earning a zero on the assignment, failing the course, or being suspended or expelled from WPI.
Common examples of violations include:
- Copying and pasting text directly from a source without providing appropriately cited credit.
- When copy-pasting code (which is an accepted practice in software development), you MUST provide the URL from which the code originated AND the full name of the original author.
- Paraphrasing, summarizing, or rephrasing from a source without providing citations.
- Collaborating on individual assignments.
Academic Accommodations:
We at WPI strive to create an inclusive environment where all students are valued members of the class community. If you need course adaptations or accommodations because of a disability, or if you have medical information to share with us that may impact your performance or participation in this course, please make an appointment with us as soon as possible. If you have approved accommodations, please request your accommodation letters online through the Office of Disability Services student portal. If you have not already done so, students with disabilities who need to utilize accommodations for this course are encouraged to contact the Office of Disability Services as soon as possible to ensure that such accommodations are implemented in a timely fashion.
Email – DisabilityServices@wpi.edu
Phone – (508) 831-4908
On Campus – Daniels Hall, First Floor 124
Grading Policy:
Final course grades are based on a student’s performance as follows:
Letter Grade |
Percentage |
A |
90 - 100 |
B |
80 - 89 |
C |
70 - 79 |
D |
60 - 69 |
F |
< 60 |
Course incompletes may be granted if the major part of the course is completed; however, no additional credit can be given for missed class discussions or teamwork beyond the end of the course. In addition, in the case of an incomplete, the student is responsible for handing in the final work within the WPI required timeframe of one (1) year. After this time, an incomplete grade changes to a failing (F) grade.
Course Summary:
Date | Details | Due |
---|---|---|
