CSC 544 - Advanced Data Visualization (Spring 2025)
Tues./Thurs. 3:30-4:45pm, Gould-Simpson, Rm 701
Course Syllabus
- Course Description
- Course Content
- Course Policies
- Grading Policies
- University and Department Policies
Course Description
The is a graduate level course on theory, design, application, and implementation of data visualizations. Students will learn principles and skills for designing, programming, and evaluating data visualizations and demonstrate these skills through coursework. Students will also learn about the research aspects of visualization. Topics include: systems architecture, algorithms, data structures, verification, and software engineering techniques for implementing and managing data visualizations; common classes of data and visual representations; methods of design and evaluation; and capabilities and limits of humans and their effect on design and implementation.
Good data visualization involves a combination of perceptual psychology, mathematics, and computer science. This makes our subject uniquely challenging: sometimes the way our eyes work stands in way of applying some beautiful result from computer science. Sometimes it’s the other way around: something deep about the math in the data will help guide the design process and let us make a picture that is beautiful, informative, and truthful.
Official Catalog Description
Please see the the UA catalog for the official course description.
Course Prerequisites
No specific courses are prerequisite, but students enrolled in this course are expected to have a foundation in computer science and be able to pick up new programming languages as required by the assignments and project as well as write technical documents.
Students are also expected to have an introductory knowledge of linear algebra and calculus. Completed material in computer graphics topics (CSC 433/533 or equivalent) is helpful but not required, nor is undergraduate data visualization (CSC 444 or equivalent) required. While students majoring in areas other than CSC are encouraged to enroll, certain topics may prove challenging. Please contact the instructor if you are unsure if you satisfy the prerequisites.
Instructor and Contact Information
- Instructor: Joshua A. Levine
- Phone: +1-520-621-3153
- Email: [username]@arizona.edu, my username is josh.
- Office: GS 754
- Office Hours: By appointment, Schedule via Calendly
- Office hours are time the instructor(s) reserves for meeting with students, either one-on-one or in small groups, to discuss assignments, projects, as questions related to course materials, or to seek mentoring advice.
- If the above times are not sufficient, we can schedule an appointment (via email or private message on Piazza) to meet.
- Open Door Policy: if my office door is open, please feel free to stop by and inquire if I have available time. If my door is completely closed, it typically indicates I am in an (uninterruptible, except for emergencies) meeting or phone call. Please use your best discretion.
- Course Page: https://jalevine.bitbucket.io/csc544/
- Instructor Homepage: http://www.cs.arizona.edu/~josh
- D2L: https://d2l.arizona.edu/d2l/home/1569681
- Piazza: https://piazza.com/arizona/spring2025/csc544/home (preferred mode of communication)
Course Format and Teaching Methods
Primarily, the format is driven by lectures combined with in-class discussion. Out-of-class activities include readings in relevant textbooks and research papers, programming assignments, take-home exercises, and online discussions.
Course Objectives
During this course students will:
- study mechanics and principles of visualizing data
- implement techniques for visualizing data
- study methods and models of visualization design and research
- design, refine, and evaluate an interactive interface
Expected Learning Outcomes
At the end of this course, students will have learned to:
- recall and apply visualization techniques for exploratory data analysis and communication;
- recall and apply methods to design visualizations for exploratory data analysis and communication;
- recall, explain, and evaluate contributions to visualization research; and
- recall and apply experiment design techniques to evaluate visualization approaches.
Course Content
Required Texts and Readings
-
Munzner, Visualization Analysis and Design, 2014, ISBN 978-1466508910. (Note: the textbook is available electronically through the UA Library for those on campus or VPN).
-
Murray, Interactive Data Visualization for the Web: An Introduction to Designing with D3, 2017, ISBN 978-1491921289. (Note: the textbook is available electronically through the UA Library for those on campus or VPN)
-
Other handouts, research papers, and materials linked to on the course webpage
Additional Reference Reading Materials
- Ware, Information Visualization: Perception for Design, 3rd ed., Morgan Kaufmann, 2012, ISBN 978-0123814647
- Ware, Visual Thinking for Design, Morgan Kaufmann, 2008, ISBN 978-0123708960
- Tufte, Envisioning Information. Graphics Press, 1990, ISBN 978-1930824140.
-
Tufte, The Visual Display of Quantitative Information, 2nd ed. Graphics Press, 2001, ISBN 978-1930824133.
- As we will be using Javascript in this course, if you are not familiar you will need to find a reference. I recommend:
- Haverbeke, Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming, 2018, ISBN 978-1593279509, and
- Rauschmayer, Speaking JavaScript: An In-Depth Guide for Programmers, 2018, ISBN 978-1449365035.
In addition to being great books, both of these books are freely available online. See https://eloquentjavascript.net and http://speakingjs.com/.
Location and Meeting Time
- Lecture meeting time: Tues./Thurs. 3:30-4:45pm
- Lecture meeting location: Gould-Simpson, Rm 701
Scheduled Topics
Week | Date | Tuesday | Date | Thursday |
1 | Jan 14 | -- No Class -- | Jan 16 | Introduction |
2 | Jan 21 | HTML/Javascript Basics | Jan 23 | d3 Intro |
3 | Jan 28 | d3 Joins and Scales | Jan 30 | Design Principles |
4 | Feb 04 | Perception | Feb 06 | Data Abstraction |
5 | Feb 11 | Visual Encoding | Feb 13 | Color |
6 | Feb 18 | Tasks and Interaction | Feb 20 | Views, Focus+Context |
7 | Feb 25 | Tabular Arrangements | Feb 27 | Hierarchies/Trees |
8 | Mar 04 | Graphs | Mar 06 | Cartography |
9 | Mar 11 | -- Spring Break -- | Mar 13 | -- Spring Break -- |
10 | Mar 18 | Interpolation | Mar 20 | Isosurfaces |
11 | Mar 25 | Volumetric Data | Mar 27 | Volume Rendering |
12 | Apr 01 | Transfer Function Design | Apr 03 | Topology |
13 | Apr 08 | Flow Data | Apr 10 | Flow Visualization |
14 | Apr 15 | FlowVis: Features, Time | Apr 17 | Uncertainty |
15 | Apr 22 | Text and Sets | Apr 24 | Retrospective |
16 | Apr 29 | Project Presentations | May 01 | Project Presentations |
17 | May 06 | Project Presentations | May 08 | -- Reading Day -- |
Readings assigned for individual lectures can be found on the course homepage.
Scheduled Activities (Assignments and Deliverables)
Assignments (55% of total grade)
This class will have seven assignments, worth 55% of your total grade (six programming assignments and one “pre-assignment”). A00 is a warmup assignment to make sure you are comfortable with the tools we will use and the submission system. The remaining six assignments require you to demonstrate a visualization approach, implemented in d3. Each will have a duration of two weeks from their official posted date to when they are due. A00 is worth 1% while the remaining six assignments are worth 9% each.
Each of the six programming assignment will also include a written portion as well. Each written component accounts for 2.5% of your total grade, and thus together these written components will account for 15% of your total grade in this class. Written assignments are in lieu of a midterm or final exam, and will be used to gauge critical understanding of the reading associated with the span of time for the assignment as well as how the concepts mesh into practical implementations.
Name | Topic | Post Date | Due Date | Graded By | Percentage |
Assignment 00 | Survey | Jan 16 | Jan 23 | Jan 30 | 1 |
Assignment 01 | D3 Basics | Jan 23 | Feb 06 | Feb 13 | 9 |
Assignment 02 | SPLOMs | Feb 06 | Feb 20 | Feb 27 | 9 |
Assignment 03 | Parallel Coordinates | Feb 20 | Mar 06 | Mar 13 | 9 |
Assignment 04 | Treemaps | Mar 06 | Mar 27 | Apr 03 | 9 |
Assignment 05 | Transfer Functions | Mar 27 | Apr 10 | Apr 17 | 9 |
Assignment 06 | Flow Visualization | Apr 10 | Apr 24 | May 01 | 9 |
Total Assignment Percentage: | 55 | ||||
Project (35% of total grade)
This course will include a summative final project, where you will demonstrate your skills in visualization research through a variety of possibilities. Projects can be completed in teams of 1-3 people. There will be four milestones for this project spread throughout the semester.
Name | Topic | Post Date | Due Date | Graded By | Percentage |
Project Milestone 01 | Proposal | Jan 28 | Feb 25 | Mar 04 | 6 |
Project Milestone 02 | Progress Update | Feb 25 | Apr 01 | Apr 11 | 6 |
Project Milestone 03 | Project Presentation | Apr 01 | Apr 29 | May 04 | 8 |
Project Milestone 04 | Final Report | Apr 03 | May 06 | May 14 | 15 |
Total Project Percentage: | 35 | ||||
Design Critiques (5% of total grade)
Besides assignments and the project, all students will perform one design critique for a visualization of their choice found from popular such as a newspaper, textbook, or magazine. Scientific magazines such as Nature or Science are allowed, but visualization journals and venues, where the topic of the work in question is primarily visualization, is not allowed.
Each week several students will post a design critique on our Piazza site. You are responsible to post one design critique during the semester and to actively participate in a discussion of a critique each week. Thus, the due dates for these are rolling.
Class Participation (5% of total grade)
This class participation grade is the instructor’s subjective judgement of the student’s contribution to a lively classroom atmosphere. He will consider mainly active, informed participation in classroom discussions, and homework reviews. Obviously, students not attending class are not contributing in this way.
While the instructor does not grade on attendance, nor is attendance required for the course, you are obligated to participate in class to receive credit for this portion of your grade. Participation will also take place as a component of design critiques – on the weeks that you are not posting a critique, you should take the opportunity to discuss it on Piazza.
Final Examination
There will be no final examination for this course, as you will conduct a summative final project.
Course Policies
Participation Policy
Participating in the course and attending lectures and other course events are vital to the learning process. That said, attendance is not required for lectures.
Nevertheless, failing to stay up-to-date on course content may affect a student’s final course grade. Class participation is an important part of your grade in this course, and it is difficult for a student to participate and the instructor(s) to gauge participation if a student does not attend.
Late Instructor
Your instructor will make every effort to be in class on time, or to inform you of any delay or cancellation. In the unusual event that he should not arrive in class or send word by 15 minutes from the class start time, the class is officially cancelled.
Makeup Policy for Students Who Register Late
Students who register after the first class meeting may make up missed assignments at a deadline set in consultation with the instructor.
Course Communications
We will use official UA email and Piazza as the primary mode of contact. D2L will be used only for the instructor to securely distribute the course calendar, class materials, and grades to students.
Grading Policies
University policy regarding grades and grading systems is available at http://catalog.arizona.edu/policy/grades-and-grading-system.
Grading Scale
Grades will be assigned based on the following scale:
- A >= 90%
- 80% <= B < 90%
- 70% <= C < 80%
- 60% <= D < 70%
- E < 60%
Grading will be based on performance on the set of assignments, project, design critiques, and class participation:
- Programming Assignments: 55%
- Project: 35%
- Design Critiques: 5%
- Class Participation: 5%
Each assignment description will include a specific rubric for how it is graded. Scores on such assignments will be weighted according to the relative point value of each assignment as highlighted above.
Requests for incomplete (I) or withdrawal (W)
Request must be made in accordance with University policies, which are available at https://catalog.arizona.edu/policy/courses-credit/grading/grading-system.
Dispute of Grade Policy
After receiving any grade for any submission, a student has 24 hours to respond to the instructor with any disputes in an email with the subject “Grade Dispute”. Such a response must enumerate a specific set of disputed items for the submission and provide evidence that each item was improperly graded. The instructor will then completely regrade the entire submission, including both the disputed items as well as non-disputed items, with the potential for all aspects of the grade to change.
Submission, Lateness, and Revision Policy
All graded work has a fixed due date. Revisions and resubmissions after grading will not be accepted.
Submission for programming assignments will be due on 11:59:59PM of the due date unless otherwise noted. A late submission will receive a penalty of 10% per day for each work day it is late, up to a maximum of 5 days late. This penalty is applied multiplicatively: the instructor will first grade your assignment without penalty and then multiply your earned grade by \((1-0.1N)\) where \(N\) is the number of days late.
Grades for assignment submitted late may not be posted within the same time frame as assignments submitted on time, but the instructor will make their best effort to expedite the grading of late submissions.
University and Department Policies
University-wide Policies
The following UA policies are provided at http://catalog.arizona.edu/syllabus-policies:
- Threatening Behavior Policy
- Absence and Class Participation Policies
- Accessibility and Accommodations Policy
- Code of Academic Integrity
- Nondiscrimination and Anti-Harassment Policy
Department-wide Syllabus Policies and Resources
The following departmental syllabus policies and resources are provided at https://www.cs.arizona.edu/cs-course-syllabus-policies:
- Department Code of Conduct
- Class Recordings
- Illnesses and Emergencies
- Obtaining Help
- Preferred Names and Pronouns
- Confidentiality of Student Records
- Additional Resources
- Land Acknowledgement Statement
Classroom Behavior Policy
To foster a positive learning environment, students and instructors have a shared responsibility. We want a safe, welcoming, and inclusive environment where all of us feel comfortable with each other and where we can challenge ourselves to succeed. To that end, our focus is on the tasks at hand and not on extraneous activities (e.g., texting, chatting, reading a newspaper, making phone calls, web surfing, etc.).
Students are asked to refrain from disruptive conversations with people sitting around them during lecture.
Some learning styles are best served by using personal electronics, such as laptops and iPads. Nevertheless, these devices can be distracting to other learners. While all students are welcome to use personal electronics in class, they must be used in a way that does not disrupt either the instructor or other students’ experience.
Students observed engaging in disruptive activity will be asked to cease this behavior. Those who continue to disrupt the class will be asked to leave lecture or discussion and may be reported to the Dean of Students.
Academic Integrity Policy
Students are encouraged to share intellectual views and discuss freely the principles and applications of course materials. However, graded work/exercises must be the product of independent effort unless otherwise instructed. Students are expected to adhere to the UA Code of Academic Integrity as described in the UA General Catalog. See https://deanofstudents.arizona.edu/policies/code-academic-integrity.
Uploading material from this course to a website other than D2L (or the class Piazza) is strictly prohibited and will be considered a violation of the course policy and a violation of the code of academic integrity. Obtaining material associated with this course (or previous offerings of this course) on a site other than D2L (or the class Piazza), such as github, Chegg, Course Hero, etc. or accessing these sites during a quiz or exam is a violation of the code of academic integrity. To avoid an appearance of plagiarism, when in doubt cite your sources or ask me. Be particularly careful with your use of generative AI tools, LLMs such as ChatGPT, Copilot, etc. While you are not banned from using these tools, you should not be using them in a way that compromises integrity or otherwise leads to graded work that misrepresents who completed it.
Any student determined to have uploaded or accessed material in an unauthorized manner will be reported to the Dean of Students for a Code of Academic Integrity violation, with a recommended sanction of a failing grade in the course.
Notification of Objectionable Materials
The instructor does not intend to include topics and/or course material that are explicit or offensive in any way. The instructor will make every effort to provide advance notice when such materials may potentially be or potentially violate this intent. Please contact the instructor to discuss any content-related concerns, as alternative materials may be available.
Safety on Campus and in the Classroom
For a list of emergency procedures for all types of incidents, please visit the website of the Critical Incident Response Team (CIRT): https://cirt.arizona.edu/case-emergency/overview
Also watch the video available at https://arizona.sabacloud.com/Saba/Web_spf/NA7P1PRD161/app/me/ledetail;spf-url=common%2Flearningeventdetail%2Fcrtfy000000000003841.
Subject to Change Statement
Information contained in the course syllabus, other than the grade and absence policy, may be subject to change with advance notice, as deemed appropriate by the instructor.