General Information

CS 360-01 Data Visualization • Spring 2013
CS 686-01 Special Topics: Data Visualization • Spring 2013

Monday, Wednesday, Friday 1:00pm – 2:05pm
Harney Science Center • Room 235

This course will introduce students to the field of data visualization. Students will learn basic visualization design and evaluation principles, and learn how to acquire, parse, and analyze large datasets. Students will also learn techniques for visualizing multivariate, temporal, text-based, geospatial, hierarchical, and network/graph-based data. Additionally, students will utilize Processing, D3, R and ggplot2, and many other tools to prototype many of these techniques on existing datasets.

This course falls under the "Applications" category for Computer Science majors, and counts towards a minor in Computer Science.

Prerequisites: You must have completed CS 212 Software Development with a grade of C or better to take this course.


Please contact the instructor for lecture, project, or course-related questions.

Office Hours:
Harney Science Center • Room 532
Monday, Wednesday, Friday • 3:30pm – 4:30pm
and by appointment

If you are unable to make these office hours, please contact the instructor to setup an appointment.

Teacher Assistant

Please contact the teacher assistant for help with homework, or with questions regarding homework or participation grades.

Eric Fulton

The teacher assistant will hold office hours throughout the semester. Exact dates and times will be announced during the first week of class.

Course Website

The website for this course is located at:

You can find announcements, a calendar, lecture notes, and contact information on this website. Please check the course website regularly.


Announcements will also be posted regularly on the course website. You can subscribe to these announcements via RSS:


You may also follow me @sjengle on Twitter. I will often post extra office hours on Twitter, but not all of the posts are related to this course.

Learning Outcomes

At the end of this course, students should be able to:

  • Understand and apply principles of data visualization
  • Acquire, parse, and analyze abstract data sets
  • Design and implement standard visualization techniques
  • Quantitatively and qualitatively evaluate existing visualizations
  • Rapidly prototype visualizations

Please see the following sections for additional details.


The following is an estimated list of topics and weekly schedule. Check the course website for the latest schedule.

  • Week 01: Course Introduction, Terminology
  • Week 02: Basic Charts and Plots, Multivariate Data Visualization
  • Week 03: Principles of Perception, Color, Design, and Evaluation
  • Week 04: Text Data Visualization
  • Week 05: Interactivity and Animation
  • Week 06: Temporal Data Visualization
  • Week 07: MIDTERM EXAM
  • Week 08: Spring Break, No Classes
  • Week 09: Geospatial Data Visualization
  • Week 10: Visualization Case Studies
  • Week 11: Redesign Principles and Design Dimensionality
  • Week 12: Hierarchical Data Visualization
  • Week 13: Network Data Visualization
  • Week 14: FINAL EXAM
  • Week 15: Project Prototype Demonstrations
  • Week 16: Ethics and Aesthetics
  • Finals Week: Final Project Poster Session

The final exam will be held during the last week of lecture. The exam period during finals week will be used for final project presentations instead.

Course Materials

There are no required textbooks for this class. See the Resources page for recommended books.

Course Requirements

Lectures will consist of slide presentations and code demonstrations. Students will be required to complete a mix of participation exercises, homework assignments, exams, and projects. See the following sections for additional details.


This category includes participating in peer evaluations and discussion exercises (both in-class and online). Graduate students will also be expected to read and present recent visualization papers on a specific topic.


There will be several homework assignments, both written and programming, assigned on a semi-weekly basis. This will include evaluating and reworking existing visualizations, using existing tools to design visualizations, and prototyping custom visualizations in Processing or D3.


There will be a midterm and comprehensive final exam, on approximately weeks 7 and 15 respectively. Both exams will be closed-book and closed-note. Graduate students will be expected to answer extra questions on both exams.


Students will be assigned a final visualization project near the end of the semester. For the final project, students will select a data set and visualization technique, develop a prototype, and rework the prototype based on peer evaluations. Students will demonstrate their final projects during finals week.

Grade Breakdown

The final grade for this course will depend on a mix of homework, projects, participation, and exams. The specific breakdown is as follows:

10% Participation
25% Homework

10% Midterm Exam
15% Final Exam

10% Midterm Prototype
15% Midterm Project

15% Final Prototype
25% Final Project

*Updated on 2/18/2013.

Letter grades will be assigned according to the following scale:

97%  ≤  A+
93%  ≤  A
90%  ≤  A–
87%  ≤  B+
83%  ≤  B
80%  ≤  B–
77%  ≤  C+
73%  ≤  C
70%  ≤  C–
67%  ≤  D+
63%  ≤  D
60%  ≤  D–
60%  >  F

For example, you will receive a C letter grade if your grade is greater than or equal to 70% and less than 77%. Please note this scale is subject to change.

Grading Policies

The averages for undergraduates versus graduate students will be computed separately, and a separate curve will be applied at the end of the semester if necessary. Below are the grading policies for extra credit, late submissions, and cheating.

Extra Credit

There may occasionally be extra credit opportunities throughout the semester. Unless otherwise noted, each grade category will be capped to 100%. As a result, homework extra credit will not affect the project grade (and visa versa).

Late Submissions

All deadlines and exam dates are firm. No late homework, quizzes, exams, or projects will be accepted. Late submissions will receive an automatic 0%.

Exceptions to this policy are made only in the case of verifiable medical or family emergency. Extensions and makeup exams must be arranged prior to the original deadline unless in case of extreme emergency (such as an emergency room visit).

Academic Honesty

All students are expected to know and adhere to the University of San Francisco's Honor Code. Go to for details. The first violation of the Honor Code will result in an automatic 0 on the offending assignment, and repeat violations will result in an automatic F for the course.

Cheating includes copying code from the web or other students, collaborating too closely with other students on non-collaborative assignments, or in any other way misrepresenting work of others as your own.

Time Expectations

This is a four credit course. Students are expected to spend approximately 10 hours per week outside of lecture working on homework and projects, as well as participating in discussions and preparing for exams.

Peer Tutoring Services

The Learning and Writing Center provides assistance to students in their academic pursuits. Services are free to students and include individual and group tutoring appointments and consultations to develop specific study strategies and approaches. Please visit for more information.

Student Disability Services

If you are a student with a disability or disabling condition, or if you think you may have a disability, please contact USF Student Disability Services (SDS) within the first week of class to speak with a disability specialist. If you are determined eligible for reasonable accommodations, your disability specialist will send your accommodation letter to the instructor detailing your needs for the course. For more information, please visit or call (415) 422-2613.