Department of Computer Science
The University of Texas at Austin

CS 329E — Elements of Data Visualization (Fall 2026)
Section 55190: MW 5:00–6:30 PM, RLP 1.106
Section 55195: MW 6:30–8:00 PM, RLP 1.106

Instructor: Dr. Shyamal Mitra
Office Hours: TTh 6:00–7:00 PM
Location: Zoom link on Canvas
E-mail: mitra@cs.utexas.edu

Required Reading

Reference Material

Recommended Books
Edward Tufte is a seminal author in this field, and several concepts in this course are drawn from his work. His books are recommended but not required, and they are not inexpensive.

Prerequisites

This is an upper-division course in the Elements of Computing Certificate series. You should have completed CS 313E or CS 314 with a grade of C- or better. Assignments are done in Python and JavaScript; prior Python experience is assumed, as is basic computer literacy (file systems, editors, operating systems, etc.).

You will need a computer to install Python packages, access course materials on Canvas, submit assignments, and join Zoom meetings. As a backup, please set up a CS computer account.

Lectures and Office Hours

This is a hybrid course: we will meet either in person or online, and will give at least one week's notice before switching between the two. Online lectures and office hours are held on Zoom via Canvas; in-person meetings are held in the classrooms listed above.

For online meetings, make sure your Zoom and Duo apps are up to date, and log in to Zoom using your ut_eid@eid.utexas.edu account. Lectures are recorded for educational use only; recordings are confidential and may not be shared in any form. Sharing a recording violates University policy and is subject to review by the Office of Student Conduct and Academic Integrity. Office hours are not recorded.

Scope of the Course

This course introduces key design principles and techniques for interactive data visualization. Its goals are to understand how visual representations support the analysis and interpretation of complex data, how to design effective visualizations, and how to build interactive visualizations using modern frameworks.

Learning Objectives

Data is growing explosively, and the challenge is to filter it into reliable information and synthesize that into practical knowledge. Visualization helps combat this information overload: a well-designed visual encoding replaces cognitive calculation with straightforward perceptual inference, improving comprehension, memory, and decision-making. Visual representations also help engage broader audiences in analytical thinking.

This course covers techniques and algorithms for building effective visualizations, drawing on principles from graphic design, visual art, perceptual psychology, and cognitive science. It is aimed both at students who want to use visualization in their own work and at those interested in building visualization tools and systems.

By the end of the course, you should be able to:

Attendance

Attendance is mandatory and counts toward your grade. Please be punctual, but if you are running late, come to class anyway rather than skip it — and try not to make a habit of arriving late. Two absences will be excused.

Class Participation

You are expected to attend class and take part in activities such as coding exercises and problem-solving, submitting your work at the end of each session. Class participation counts toward your grade, and your lowest two scores will be dropped.

Quizzes

A short multiple-choice quiz (about three to five questions) is given every Friday on Canvas, covering assigned readings, class material, and assigned online courses. There are no makeup quizzes; instead, your lowest quiz score is dropped — a policy meant to cover any reason you might miss one. This drop is non-negotiable.

Online Courses

This course assumes some background in statistics, data science, and Python's data science packages. To fill any gaps, you will be assigned free online courses through LinkedIn Learning or Coursera — treat these as reading assignments. When you finish one, upload a screenshot of your completion to Canvas. Grading is binary: full credit for completing a course, none otherwise.

Assignments

Weekly programming assignments are posted on Canvas and due on Mondays. You may work with a partner. Late submissions are accepted for up to two days, at a penalty of 10 points (out of 100) per day; an assignment is considered one day late until midnight the following day, and two days late until midnight of the day after that. Beyond two days, we will only accept a late assignment for a compelling reason, at a 30-point penalty.

Expect to spend 10–12 hours per week on assignments, spread across several days. Submitting on time lets grading start promptly and assignments be returned quickly, so budget enough time to finish before each deadline.

Grade Disputes: Assignment scores are posted on Canvas, and you have one week after a grade is posted to dispute it. Since assignments are graded by the TAs, start by discussing the grade with them; if you can't resolve the disagreement, bring it to the instructor. Disputes must be raised within three days of a grade being returned. You may also resubmit an assignment for regrading, though the maximum possible score on a resubmission is 70/100.

Final Project

The project is the core of this course. You will choose a topic, acquire data, and design, implement, and critically evaluate an interactive visualization that answers a question you have about it. Expect mistakes and wrong turns along the way — they're a valuable part of exploring the design space and iterating toward a better solution. Intermediate milestones will give you feedback as you go. You will work in groups of three.

How to Succeed

  1. Practice. Practicing what you learn is essential — some ideas only become clear once you try them, and doing the work often reveals gaps in understanding that reading alone would not.
  2. Participate. Seeing what comes easily and what doesn't helps us give better advice and adjust the course as needed. Ask questions in the discussion forums, and help classmates whose questions you can answer.
  3. Present. The University stakes its reputation, and that of its faculty, on your having mastered the skills your degree represents. Treat every assignment and project as a presentation, judged on its cohesiveness and its ability to stand on its own as a piece of data visualization.

Classroom Expectations

Professional conduct is grounded in mutual respect, which includes (but isn't limited to) the following:

Attending class: The class benefits from everyone's attendance and participation. As a hybrid course, we may meet in the classroom or online via Zoom, with at least one week's notice before switching formats. Attendance is mandatory. During Zoom sessions, please keep your video on and set your display name to your actual name as listed in Canvas.

Arriving on time: Please come to class even if you're running late — attending part of a session is better than missing it entirely. If you must arrive late or leave early, please be considerate of others.

Minimizing disruptions: You're welcome to join synchronously regardless of the noise or activity around you, but please stay muted during lecture so everyone can hear. On most systems, holding the spacebar temporarily unmutes you in Zoom.

Respect: Act respectfully toward all class participants.

Classroom Policies

Statement on Learning Success: Your success in this course matters to us, and we recognize that everyone learns differently. If any aspect of the course is preventing you from learning or making you feel excluded, please let us know as soon as possible so we can find a workable solution. We also encourage you to reach out to UT's student resources; many are listed in this syllabus, but we're happy to help you connect with the right office.

Late Add Policy

Late additions to the class are welcome. Please reach out to us, connect with your classmates, and join the class Discord to catch up on what's been covered. Feel free to visit office hours if you need help getting up to speed.

All homework is due after the add/drop period, so you'll have ample time to complete your first assignment, and extensions are available for the online courses. Class participation and quizzes have no extensions, but our drop policy (excusing your lowest scores) is designed to accommodate any you miss.

If you run into issues with course material, let us know. Visit the instructor's office hours for content or administrative questions, and the TAs' office hours for questions about homework, quizzes, and projects.

Stance on Generative AI

A computer cannot think — it computes. It's an excellent tool for problem-solving, but it is we, not the computer, who ultimately solve the problem: we design the algorithms, and the computer executes them, freeing us to focus on the thinking rather than the repetitive work.

Generative AI is here to stay, and it's meant to assist our thinking, not replace it. The risk is becoming overly reliant on it and mistaking its output for our own understanding. Use it thoughtfully, without letting it erode your critical thinking — it's a powerful ally, not a substitute for that skill.

Our stance on Generative AI is neutral: whether or not you use it in your work is your choice, with no penalty or restriction either way. That said, we strongly encourage responsible use that preserves your critical thinking, and we'd love to hear about your experiences using it.

Grades

Your grade is based on attendance, class participation, quizzes, assignments, online courses, and the project, weighted as follows. There is no extra credit, and no scores are dropped from the weighted average beyond the drops already described above.

All scores are entered on Canvas — check them regularly to make sure they're correct. Note that the running average Canvas displays is not your grade, since it doesn't apply these weights; your final grade is computed as the weighted average above. We reserve the right to curve grades upward, but grades will be no lower than:

Late Policy: Homework and labs are due at midnight, and this policy exists to accommodate unexpected personal circumstances. One day late costs 10 points; two days late costs 20 points — no explanation is required for lateness of two days or less. Beyond two days, late work is only accepted after discussing extenuating circumstances with us, with a 30-point penalty.

Regrading Policy: If you believe an assignment was graded incorrectly, email the TAs with an explanation within seven days of receiving your grade. Requests submitted after that window will not be accepted.

Absences: You're responsible for completing any participation activities assigned during a class you miss, even if you can't attend synchronously — check Canvas, and let us know as soon as possible after missing a session.

Student Rights and Responsibilities

You have the right to:

With these rights come responsibilities. You are responsible for:

University Policies

Academic Integrity: Every student is expected to abide by the University of Texas Honor Code: "As a student of The University of Texas at Austin, I shall abide by the core values of the University and uphold academic integrity." UT takes plagiarism seriously — if you use words or ideas that are not your own (including your own work from a previous class), you must cite the source, or you risk academic disciplinary action, up to and including failing the course. You are responsible for understanding UT's Honor Code and academic honesty standards, available at:
https://deanofstudents.utexas.edu/conduct/standards-of-conduct.php

University Time Table

General Policies

If you must miss class or an exam to observe a religious holy day, you may complete the assignment or exam on an alternate date, provided you give written notice at least fourteen days in advance. For holy days that fall within the first two weeks of the semester, notice must be given on the first day of class.

Students with disabilities who need accommodations should contact the Services for Students with Disabilities (SSD) Office at 471-6259 (or 471-4641 TTY).