CSC 444 - Data Visualization (Fall 2021)
T/R 9:30-10:45am, Spch & Hearing Sci, Rm 205
Course Syllabus
- Description of Course
- Course Content
- Course Policies
- Department and University Policies
- Department of Computer Science Code of Conduct
- Classroom Behavior Policy
- Threatening Behavior Policy
- Content Warning
- Accessibility and Accommodations
- Code of Academic Integrity
- UA Nondiscrimination and Anti-harassment Policy
- Additional Resources for Students
- Campus Pantry
- Preferred Gender Pronoun
- Safety on Campus and in the Classroom
- Confidentiality of Student Records
- Land Acknowledgment
- Subject to Change Statement
Description of Course
This course will present the fundamentals of data visualization, the art and science of using a computer to generate visual depictions of data. The course will present the foundations of graphic design, perceptual psychology and cognitive science, as well as the algorithmic basis for many for the visualization techniques. While statistical techniques may determine correlations among the data, visualization helps us frame what questions to ask.
The course is targeted at students looking for effective ways of understanding data from their own fields, as well as students interested in learning the fundamentals that will enable them to build and improve the state of the art. The successful student will learn to design, critique and improve data visualizations.
Course Prerequisites or Co-requisites
CSC 335 (Object-Oriented Programming and Design) and CSC 345 (Analysis of Discrete Structures) 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.
We will write most of our code using the web stack. This means we are targeting modern web browsers, and writing our programs in a combination of HTML, CSS, and JavaScript. If you don’t know these technologies, you will be expected to learn them. CSC 337 (Web Programming) is not a formal pre-requisite for this course, but it might be considered helpful.
Instructor and Contact Information
- Instructor: Joshua A. Levine
- Phone: +1-520-621-3153
- Email: [username]@arizona.edu, my username is josh.
- Office: Online via Zoom, Schedule via Calendly
- Office Hours: M 3:30-4:30pm, T 3:00-4:00pm
- Otherwise, we can schedule an appointment (via email or private message on Piazza) to meet.
- TAs:
- Zhenge Zhao; zhengezhao@email.arizona.edu
- Deep Mehta; deepmehta@email.arizona.edu
- TA Office Hours (primarily for issues with grading):
- Zhenge Zhao: F 11:00am-12:00pm, (online via Zoom)
- Deep Mehta: R 11:30am-12:30pm, (online via Zoom)
- Course Page: https://jalevine.bitbucket.io/csc444/f21/
- Instructor Homepage: http://www.cs.arizona.edu/~josh
- D2L: https://d2l.arizona.edu/d2l/home/1071719
- Piazza: https://piazza.com/arizona/fall2021/csc444/home
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.
Obtaining Help
Academic advising: If you have questions about your academic progress this semester, or your chosen degree program, consider contacting your department’s academic advisor(s). Your academic advisor and the Advising Resource Center can guide you toward university resources to help you succeed. Computer Science major students are encouraged to email advising@cs.arizona.edu for academic advising related questions.
CS Tutor Center: The Department of Computer Science offers FREE tutoring for students enrolled in CSC courses. You can view tutor schedules and sign up for tutoring sessions by visit our CS Tutoring Page.
Life challenges: If you are experiencing unexpected barriers to your success in your courses, please note the Dean of Students Office is a central support resource for all students and may be helpful. The Dean of Students Office can be reached at 520-621-2057 or DOS-deanofstudents@email.arizona.edu.
Physical and mental-health challenges: If you are facing physical or mental health challenges this semester, please note that Campus Health provides quality medical and mental health care. For medical appointments, call (520-621-9202. For After Hours care, call (520) 570-7898. For the Counseling & Psych Services (CAPS) 24/7 hotline, call (520) 621-3334.
Class Recordings
For lecture recordings, which are used at the discretion of the instructor, 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 (Code of Academic Integrity and the Student Code of Conduct) are subject to suspension or civil action.
Course Objectives
The content of the course is split roughly in three distinct aspects of visualization: mechanics, principles, and techniques.
Mechanics: You will learn how the modern web stack enables performant and portable data visualization programs. You will learn to use some of the most popular data visualization libraries, you will learn how they are implemented, and their limitations.
Principles: These principles are based on perceptual psychology and physiology, and how they constraint the algorithms for displaying data effectively and efficiently. They also intertwine with a collection of design principles the design process that includes abstracting, encoding, and interacting with data.
Techniques: You will learn the fundamental algorithms behind many of the techniques created to display data effectively.
Expected Learning Outcomes
Expected outcomes for Mechanics
- Implementing basics in HTML, CSS, Scalable Vector Graphics, Javascript
- Developing visualizations in d3 using the concepts of selections, scales, transitions, events
- Being familiar with the basics of remedial linear algebra, possibly including:
- Vector operations
- Eigenanalysis of real symmetric matrices
Expected outcomes for Principles
- Becoming familiar with scales of measurement
- Applying perceptual channels and color vision
- Recognizing the effect of preattentiveness
- Describing the pros and cons of interaction and animation
- Demonstrating when to employ filtering, aggregation, linked views, and visual querying
- Using these principles for informed critique and analyzing the visualization design processes
Expected outcomes for Techniques
- Mastering basic visualizations that employ scatterplots, line plots, small multiples
- Explaining the challenges of visualizing high-dimensional data and possible methods of dimensionality reduction
- Understanding the pros and cons of visualizing hierarchies and networks
- Utilizing visualization of maps and 2D scalar fields: i.e. choropleths, heatmaps, and isocontours.
- Extending these visualizations to 3D data through isosurfaces and direct volume rendering
- Being familiar with visualization for vector fields that utilize streamlines and derived fields
Course Content
Location
The class will meet T/R 9:30-10:45am at Spch & Hearing Sci, Rm 205, in person. Lectures will not be recorded live.
Lecture Topics
Week | Date | Tuesday | Date | Thursday |
1 | Aug 24 | Introduction | Aug 26 | HTML/CSS/SVG Basics |
2 | Aug 31 | Javascript Basics | Sep 02 | Javascript + DOM, SVG |
3 | Sep 07 | d3 Intro | Sep 09 | d3 Joins and Scales |
4 | Sep 14 | Design Principles | Sep 16 | Perception |
5 | Sep 21 | Data Abstraction | Sep 23 | Visual Encoding |
6 | Sep 28 | Color | Sep 30 | Color in d3 |
7 | Oct 05 | Tasks and Interaction | Oct 07 | Views, Focus+Context |
8 | Oct 12 | Midterm | Oct 14 | Tabular Arrangements |
9 | Oct 19 | Hierarchies/Trees | Oct 21 | Graphs |
10 | Oct 26 | -- IEEE VIS 2021 -- | Oct 28 | -- IEEE VIS 2021 -- |
11 | Nov 02 | Cartography | Nov 04 | Interpolation |
12 | Nov 09 | Isosurfaces | Nov 11 | -- Veterans Day -- |
13 | Nov 16 | Volume Rendering | Nov 18 | Transfer Function Design |
14 | Nov 23 | Flow Visualization | Nov 25 | -- Thanksgiving -- |
15 | Nov 30 | Text and Sets | Dec 02 | Retrospective |
16 | Dec 07 | Final Exam Review | Dec 09 | -- Reading Day -- |
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)
- 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/.
- Other handouts, research papers, and materials linked to on the course webpage
Assignments and Examinations
Programming Assignments (60% of final grade)
Name | Topic | Post Date | Due Date | Graded By | Percentage |
Assignment 01 | Survey | Aug 24 | Aug 31 | Sep 06 | 1 |
Assignment 02 | HTML + SVG | Aug 31 | Sep 07 | Sep 13 | 5 |
Assignment 03 | Javascript | Sep 07 | Sep 14 | Sep 20 | 5 |
Assignment 04 | D3 | Sep 14 | Sep 21 | Sep 27 | 5 |
Assignment 05 | Scales, Axes, Transitions | Sep 21 | Sep 30 | Oct 06 | 6 |
Assignment 06 | Color Spaces | Sep 30 | Oct 07 | Oct 13 | 5 |
Assignment 07 | Linked Views, Brushing | Oct 07 | Oct 19 | Oct 25 | 6 |
Assignment 08 | Parallel Coordinates | Oct 19 | Oct 28 | Nov 03 | 6 |
Assignment 09 | IEEE VIS | Oct 26 | Nov 04 | Nov 10 | 3 |
Assignment 10 | Treemaps | Oct 28 | Nov 09 | Nov 15 | 6 |
Assignment 11 | Marching Squares | Nov 09 | Nov 18 | Nov 24 | 6 |
Assignment 12 | Transfer Functions | Nov 18 | Nov 30 | Dec 06 | 6 |
Assignment 13 | Review (Extra Credit) | Nov 30 | Dec 07 | Dec 13 | 0 |
Total Assignment Percentage: | 60 | ||||
Class Participation (10% 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 be gauged through virtual mechanisms, such as contributions to the class discussions on Piazza.
Midterm Examination (12% of final grade)
A midterm exam will be held in class on Tue., Oct 12, 9:30-10:45am, and it will cover all material discussed in class prior to the date of the examination.
Final Examination (18% of final grade)
The final examination will be comprehensive. A review will be conducted on the final lecture.
Exam Date/Time/Location: Sun., Dec 12 8:00am - Tues., Dec 14, 10:00am, Spch & Hearing Sci, Rm 205
See also, UA Final Exam Schedule: https://registrar.arizona.edu/faculty-staff-resources/room-class-scheduling/schedule-classes/final-exams
Course Policies
Statement on compliance with COVID-19 mitigation guidelines
As we enter the Fall semester, your and my health and safety remain the university’s highest priority. To protect the health of everyone in this class, students are required to follow the university guidelines on COVID-19 mitigation. Please visit https://covid19.arizona.edu/.
Absence and Class Participation Policy
The UA’s policy concerning Class Attendance, Participation, and Administrative Drops is available at http://catalog.arizona.edu/policy/class-attendance-participation-and-administrative-drop
The UA policy regarding absences for any sincerely held religious belief, observance or practice will be accommodated where reasonable: http://policy.arizona.edu/human-resources/religious-accommodation-policy.
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: http://policy.arizona.edu/employment-human-resources/attendance.
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 drc-info@email.arizona.edu. 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.
Illness
- If you feel sick, or may have been in contact with someone who is infectious, stay home. Except for seeking medical care, avoid contact with others and do not travel.
- Notify your instructor(s) if you will be missing a course meeting or an assignment deadline. Please understand that this does not guarantee an extension of the deadline.
- If you must miss the equivalent of more than one week of class, you should contact the Dean of Students Office DOS-deanofstudents@email.arizona.edu to share documentation about the challenges you are facing.
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 9:29:59AM 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.
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:
- A >= 90%
- 80% <= B < 90%
- 70% <= C < 80%
- 60% <= D < 70%
- E < 60%
Grading will be based on performance on the set of assignments, the midterm and final exam, and class participation:
- Programming Assignments: 60%
- Midterm Exam: 12%
- Final Exam: 18%
- Class Participation: 10%
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
- 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.
- Graded homework will be returned before the next homework is due.
- Exams will be returned “promptly”, as defined by the instructor (and as promised in the syllabus).
- 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 http://catalog.arizona.edu/policy/grades-and-grading-system#incomplete and http://catalog.arizona.edu/policy/grades-and-grading-system#Withdrawal, 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 http://policy.arizona.edu/education-and-student-affairs/threatening-behavior-students.
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, https://drc.arizona.edu/) 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 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 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 http://new.library.arizona.edu/research/citing/plagiarism.
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 of Arizona is committed to creating and maintaining an environment free of discrimination. In support of this commitment, the University prohibits discrimination, including harassment and retaliation, based on a protected classification, including race, color, religion, sex, national origin, age, disability, veteran status, sexual orientation, gender identity, or genetic information. For more information, including how to report a concern, please see http://policy.arizona.edu/human-resources/nondiscrimination-and-anti-harassment-policy
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 http://catalog.arizona.edu/policies. Visit the UArizona COVID-19 page for regular updates.
-
Campus Health (http://www.health.arizona.edu/). Campus Health provides quality medical and mental health care services through virtual and in-person care. Voluntary, free, and convenient COVID-19 testing is available for students on Main Campus. COVID-19 vaccine is available for all students at Campus Health. Phone: 520-621-9202
-
Counseling and Psych Services (CAPS) (https://health.arizona.edu/counseling-psych-services). CAPS provides mental health care, including short-term counseling services. Phone: 520-621-3334
-
The Dean of Students Office’s Student Assistance Program (http://deanofstudents.arizona.edu/student-assistance/students/student-assistance). Student Assistance helps students manage crises, life traumas, and other barriers that impede success. The staff addresses the needs of students who experience issues related to social adjustment, academic challenges, psychological health, physical health, victimization, and relationship issues, through a variety of interventions, referrals, and follow up services. Email: DOS-deanofstudents@email.arizona.edu. Phone: 520-621-7057
-
Survivor Advocacy Program (https://survivoradvocacy.arizona.edu/). The Survivor Advocacy Program provides confidential support and advocacy services to student survivors of sexual and gender-based violence. The Program can also advise students about relevant non-UA resources available within the local community for support. Email: survivoradvocacy@email.arizona.edu. Phone: 520-621-5767
Campus Pantry
Any student who has difficulty affording groceries or accessing sufficient food to eat every day, or who lacks a safe and stable place to live and believes this may affect their performance in the course, is urged to contact the Dean of Students for support. In addition, the University of Arizona Campus Pantry is open for students to receive supplemental groceries at no cost.
Please see their website at: https://campuspantry.arizona.edu/ for open times.
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 https://www.registrar.arizona.edu/.
Safety on Campus and in the Classroom
Familiarize yourself with the Spch & Hearing Sci, Rm 205 Evacuation and Active Shooter general guidance at https://cirt.arizona.edu/
Also watch the video available at https://ua-saem-aiss.narrasys.com/#/story/university-of-arizona-cert/active-shooter
Confidentiality of Student Records
Land Acknowledgment
We respectfully acknowledge the University of Arizona is on the land and territories of Indigenous peoples. Today, Arizona is home to 22 federally recognized tribes, with Tucson being home to the O’odham and the Yaqui. Committed to diversity and inclusion, the University strives to build sustainable relationships with sovereign Native Nations and Indigenous communities through education offerings, partnerships, and community service.
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.