CSC 544 - Advanced Data Visualization

Course Syllabus

Description of Course

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.

Course Prerequisites or Co-requisites

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

CSC COVID 19 Policy

All Fall 2020 CSC courses, whether In-Person, In-Person Flex, or Live Online, will provide recorded lectures for students along with office hour accommodations via Zoom. Additionally, In-Person and In-Person Flex courses will accommodate students who cannot attend class to take midterm exams and attendance will not be factored into final grades. Attendance will not be factored into final grades for any computer science course during the Fall 2020 semester.

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 and Expected Learning Outcomes

During this course students will:

  1. study mechanics and principles of visualizing data
  2. implement techniques for visualizing data
  3. study methods and models of visualization design and research
  4. design, refine, and evaluate an interactive interface

Upon completion of this course, students will be able to:

  1. recall and apply visualization techniques for exploratory data analysis and communication;
  2. recall and apply methods to design visualizations for exploratory data analysis and communication;
  3. recall, explain, and evaluate contributions to visualization research;
  4. recall and apply experiment design techniques to evaluate visualization approaches.

Course Content


This class is scheduled to be taught in the LIVE ONLINE modality.

Meeting Times: The class will meet T/R 2:00-3:15pm at Live Online via Zoom. Our meetings will be synchronous: I will lecture at these types to everyone who attends the Zoom meetings.

Class attendance: If you feel sick, or may have been in contact with someone who is infectious, stay home and rest. Except for seeking medical care, avoid contact with others and do not travel.

Class Recordings: For lecture recordings, students must access content in D2L only. Students may not modify content or re-use content for any purpose other than personal educational reasons. All recordings are subject to government and university regulations. Therefore, students accessing unauthorized recordings or using them in a manner inconsistent with UArizona values and educational policies are subject to suspension or civil action.

Equipment and software requirements: For this class you will need daily access to the following hardware: laptop or web-enabled device with webcam and microphone; regular access to reliable internet signal; ability to download and run the following software: web browser, Zoom, and Adobe Acrobat.

Lecture Topics

Week Date Tuesday Date Thursday
1 Aug 25 Introduction Aug 27 HTML/Javascript Basics
2 Sep 01 d3 Intro Sep 03 d3 Joins and Scales
3 Sep 08 Design Principles Sep 10 Perception
4 Sep 15 Data Abstraction Sep 17 Visual Encoding
5 Sep 22 Color Sep 24 Tasks and Interaction
6 Sep 29 Views, Focus+Context Oct 01 Tabular Arrangements
7 Oct 06 Hierarchies/Trees Oct 08 Graphs
8 Oct 13 Cartography Oct 15 Interpolation
9 Oct 20 Isosurfaces Oct 22 Volumetric Data
10 Oct 27 Volume Rendering Oct 29 Transfer Function Design
11 Nov 03 Topology Nov 05 Flow Data
12 Nov 10 Flow Visualization Nov 12 FlowVis: Features, Time
13 Nov 17 Uncertainty Nov 19 Text and Sets
14 Nov 24 Retrospective Nov 26 -- Thanksgiving --
15 Dec 01 Project Presentations Dec 03 Project Presentations
16 Dec 08 Project Presentations

Required Texts and Readings

Additional Reference Reading Materials

Assignments and Examinations

Assignments (49% of final grade)

This class will have seven assignments, worth 49% of your total grade (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 8% each.

Each assignment will also include a written portion as well (A00 has no programming assignment, and thus is considered only a written component). Each written component accounts for 1.5% of your total grade, and thus together these written components will account for 10% of your total grade in this class. Written assignments are in lieu of a midterm, and will provide practice questions similar to the form of questions you can expect on the final exam, usually based on the readings associated with the span of time for the assignment.

Name Topic Post Date Due Date Graded By Percentage
Assignment 00 Survey Aug 25 Sep 01 Sep 08 1
Assignment 01 D3 Basics Sep 01 Sep 15 Sep 22 8
Assignment 02 SPLOMs Sep 15 Sep 29 Oct 06 8
Assignment 03 Parallel Coordinates Sep 29 Oct 13 Oct 20 8
Assignment 04 Treemaps Oct 13 Oct 27 Nov 03 8
Assignment 05 Transfer Functions Oct 27 Nov 10 Nov 17 8
Assignment 06 Flow Visualization Nov 10 Nov 24 Dec 01 8
Total Assignment Percentage: 49

Project (30% of final grade)

This course will include a summative final project, where you will demonstrate your skills in visualization research through a variety of possibilities. 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 Sep 03 Oct 01 Oct 08 5
Project Milestone 02 Progress Update Oct 01 Oct 29 Nov 05 5
Project Milestone 03 Project Presentation Oct 29 Dec 01 Dec 14 5
Project Milestone 04 Final Report Nov 03 Dec 08 Dec 14 15
Total Project Percentage: 30

Design Critiques (5% of final 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 (6% of final 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 (10% of final grade)

The final examination will be comprehensive.

Exam Date/Time/Location: Mon., Dec. 14, 2020 3:30pm, Live Online via Zoom

See also,

Submission, Lateness, and Revision Policy

All assignments have a fixed due date. Revisions and resubmissions after grading will not be accepted.

Submission for programming assignments will be due on 3:29: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. 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.

Course Policies

Absence and Class Participation Policy

The UA’s policy concerning Class Attendance, Participation, and Administrative Drops is available at

The UA policy regarding absences for any sincerely held religious belief, observance or practice will be accommodated where reasonable:

Absences for groups of more than three students that are pre-approved by the UA Dean of Students (or Dean Designee) will be honored. See:

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. To request a disability-related accommodation to this attendance policy, please contact the Disability Resource Center at (520) 621-3268 or If you are experiencing unexpected barriers to your success in your courses, the Dean of Students Office is a central support resource for all students and may be helpful. The Dean of Students Office is located in the Robert L. Nugent Building, room 100, or call 520-621-7057.

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 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 Scale and Grading Policies

Grades will be assigned based on the following scale:

Grading will be based on performance on the set of assignments, the midterm and final exam, and class participation:

Each assignment description will include a specific rubric for how it is graded, typically out of a score between 0 and 100. Scores on such assignments will be weighted according to the relative point value of each assignment as highlighted above.

Department of Computer Science Grading Policy

  1. Instructors will explicitly promise when every assignment and exam will be graded and returned to students. These promised dates will appear in the syllabus, associated with the corresponding due dates and exam dates.
  2. Graded homework will be returned before the next homework is due.
  3. Exams will be returned “promptly”, as defined by the instructor (and as promised in the syllabus).
  4. Grading delays beyond promised return-by dates will be announced as soon as possible with an explanation for the delay.

Requests for incomplete (I) or withdrawal (W)

Request must be made in accordance with University policies, which are available at and, respectively.

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.

Department and University Policies

Department of Computer Science Code of Conduct

The Department of Computer Science is committed to providing and maintaining a supportive educational environment for all. We strive to be welcoming and inclusive, respect privacy and confidentiality, behave respectfully and courteously, and practice intellectual honesty. Disruptive behaviors (such as physical or emotional harassment, dismissive attitudes, and abuse of department resources) will not be tolerated. The complete Code of Conduct is available on our department web site. We expect that you will adhere to this code, as well as the UA Student Code of Conduct, while you are a member of this class.

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.

Threatening Behavior Policy

The UA Threatening Behavior by Students Policy prohibits threats of physical harm to any member of the University community, including to oneself. See

Content Warning

While the instructor does not intend to include topics and/or course material includes content 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.

Accessibility and Accommodations

At the University of Arizona, we strive to make learning experiences as accessible as possible. If you anticipate or experience barriers based on disability or pregnancy, please contact the Disability Resource Center (520-621-3268, to establish reasonable accommodations.

Code of Academic Integrity

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

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 Chegg, Course Hero, etc. or accessing these sites during a quiz or exam is a violation of the code of academic integrity. 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.

The University Libraries have some excellent tips for avoiding plagiarism, available at Publicly available sources for code or other material, in small amounts, may be freely used if appropriately attributed. A good rule of thumb: when in doubt about whether the use of small snippets of code not your own in a programming assignment is allowed, first ask the instructor.

Selling class notes and/or other course materials to other students or to a third party for resale is not permitted without the instructor’s express written consent. Violations to this and other course rules are subject to the Code of Academic Integrity and may result in course sanctions. Additionally, students who use D2L or UA e-mail to sell or buy these copyrighted materials are subject to Code of Conduct Violations for misuse of student e-mail addresses. This conduct may also constitute copyright infringement.

UA Nondiscrimination and Anti-harassment Policy

The University is committed to creating and maintaining an environment free of discrimination; see

Our classroom is a place where everyone is encouraged to express well-formed opinions and their reasons for those opinions. We also want to create a tolerant and open environment where such opinions can be expressed without resorting to bullying or discrimination of others.

Additional Resources for Students

UA Academic policies and procedures are available at

Student Assistance and Advocacy information is available at

Title IX

The University of Arizona is committed to removing educational barriers created by sex discrimination and sexual harassment. Sex discrimination under Title IX can include acts of violence based on sex, such as sexual assault, domestic violence, dating violence, and stalking. If you (or someone you know) has experienced or experiences any of these incidents, you have options for help at the University. The University of Arizona has staff members trained to support you in navigating campus life, accessing health and counseling services, providing academic and housing accommodations, helping with legal protective orders, and more.

Please be aware that UA faculty and instructors who work with students are required to report allegations of sex discrimination to the Title IX Office. This means that if you tell me about a situation involving sexual harassment, sexual assault, dating violence, domestic violence, or stalking that involves another student or employee, or that happens on campus or in a UA program, I must share that information with the Title IX Coordinator. Although I have to make that notification, you will have choices regarding whether or not you want to pursue a formal complaint against anyone on campus. Our goal is to make sure you are aware of the range of options available to you and have access to the resources you need.

If you wish to speak to someone privately, you can contact any of the following on-campus resources:

Preferred Gender Pronoun

My pronoun preference: he, him, his.

This course affirms people of all gender expressions and gender identities. If you prefer to be called a different name than what is on the class roster, please let me know. Feel free to correct instructors on your preferred gender pronoun. If you have any questions or concerns, please do not hesitate to contact me directly in class or via email (instructor email). If you wish to change your preferred name or pronoun in the UAccess system, please use the following guidelines:

Preferred name: University of Arizona students may choose to identify themselves within the University community using a preferred first name that differs from their official/legal name. A student’s preferred name will appear instead of the person’s official/legal first name in select University-related systems and documents, provided that the name is not being used for the purpose of misrepresentation. Students are able to update their preferred names in UAccess.

Pronouns: Students may designate pronouns they use to identify themselves. Instructors and staff are encouraged to use pronouns for people that they use for themselves as a sign of respect and inclusion. Students are able to update and edit their pronouns in UAccess. More information on updating your preferred name and pronouns is available on the Office of the Registrar site at

Confidentiality of Student Records


Land Acknowledgment

The University of Arizona sits on the original homelands of indigenous peoples who have stewarded this land since time immemorial. Aligning with the university’s core value of a diverse and inclusive community, it is an institutional responsibility to recognize and acknowledge the people, culture, and history that make up the Wildcat community. At the institutional level, it is important to be proactive in broadening awareness throughout campus to ensure our students feel represented and valued.

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.