Introduction to Information and Data Visualization

Syllabus

University of San Francisco・MSAN 622・Spring 2016

   
Semester: Spring 2016 • Module II
Lectures: Tuesday, Thursday • 3:00pm – 4:50pm
Discussion: Thursday • 1:00pm – 2:50pm
Location: 101 Howard, Room 529
Course Webpage http://jay-oh-en.github.io/courses/usf-datavis/

This course will address basic data visualization techniques and design principles. Students will obtain practical experience with the visualization of complex data, including multivariate data, geospatial data, textual data, time series, and network data.

Instructor

Please contact the instructor if you have any questions or concerns regarding the course or projects.

Name Email Twitter Office Hours
Jonathan Dinu jondinu at gmail @clearspandex Atrium Tu. 2-3pm // Th. 11am-1pm

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

Prerequisites

You must have completed MSAN 501, 593, and 692 with a grade of C or better.

Materials

There are no books required for this class. However, the following are recommended:

These books may be available freely online for USF students through the library and Safari Books Online. Check there before purchasing anything.

Outcomes

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

  • Understand basic data visualization terminology
  • Understand and create basic charts and plots
  • Design and implement interactive, multivariate, text, and temporal data visualizations
  • Evaluate data visualizations
  • Rapidly prototype visualizations using D3

Requirements

Lectures will consist of slide presentations, code demonstrations, discussions, and in-class exercises. Students will be required to complete a mix of participation exercises, homework assignments, and projects. The breakdown will be as follows:

Assignment Weight
Participation (and homework) 20%
3 Projects 30% (10% each)
Final 50%

See the following sections for additional details on each category.

Homework

There will be several homework assignments, roughly one per class. This may include evaluating and reworking existing visualizations, using existing tools to design visualizations, and prototyping custom visualizations.

These homeworks will contribute towards the students participation score and will be graded on a pass/fail rubric:

  • Complete (2)
  • Incomplete (1)
  • Not attempted (0)

Homework assignments will be assigned with Github gists and students will submit as comments or forks of the gist.

Projects

Topic Assigned Due Critique
or</br>Presentation
Extra Credit
1: Basic Charts 3/29 4/11 (9am) 4/12 (3pm) 4/19
2: Narrative (animation and interaction) 4/5 4/14 4/14 4/19
3: Maps! 4/26 5/3 5/5 NA
Final: Extend Project 3 (reusable and linked charts) 4/28 5/12 5/12 NA

There will be 3 projects assigned through the course which will be graded on a point scale (rather than pass/fail). Each project is worth 10% of your grade and will have its own rubric for success.

Peer Critiques

For projects 1 and 3 you will also submit a peer critique in addition to the code/visualization. The purpose of the peer critiques is to engage in reflective practice as well as to encourage dialogue about the topics visualized.

Presentations

For the second project (and the final) you will give a 3 minute presentation to the class (in discussion secitons) which will contribute to your grade on the project.

Final Project

Students will be assigned a final visualization project. For the final project, students will select a data set and multiple visualization techniques, develop prototypes, and rework the prototypes based on peer evaluations. Students will demonstrate their final projects during a presentation.

Participation

Visualization is for everyone, but D3.js may not be. While the course will officially be taught in Python and D3, there is no hard requirement on assignments being completed in D3.

Most of the participation assessment will come from the student’s contributions in-class and on Piazza (our discussion forum). There will be weekly participation assignments. These may include contributing to in-class discussions or exercises, or commenting on prototypes from other students. These exercises are graded on a pass/fail basis.

Schedule

Lectures will be seminar style focusing on visual design and communication principles. Labs will be practice based with a hands-on project to apply the concepts from lecture.

Week Topic
1 Introduction to Visual Design
2 Simple Visual Encodings
3 Grammar of Graphics and EDA
4 Narrative (and interaction)
5 Complex Visual Encodings (Hierarchical, geographic, network, etc.)
6 Reproducible Research
7 Large Scale (and advanced) Visualization
8 Final Project Presentations

Grades

Letter grades will be assigned according to the following (fixed) scale:

   
A+ ≥ 97%
A ≥ 94%
A– ≥ 90%
B+ ≥ 87%
B ≥ 84%
B– ≥ 80%
C+ ≥ 77%
C ≥ 74%
C– ≥ 70%
F < 70%

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

There is no D letter grade for graduate students. See the Graduate Student Regulations for more information about letter grades and how they are translated into GPA.

Policies

Attendance Policy

Students are expected to be on-time to all classes. Attendance is mandatory for all lectures, discussions, exercises, and presentations.

Late Policy

All deadlines are firm. No late assignments will be accepted. Exceptions to this policy are made only in the case of verifiable medical or family emergency. Extensions 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 Academic Honor Code. Go to http://www.usfca.edu/catalog/policies/honor for details. The first violation of the Honor Code will result in an automatic 0 on the offending assignment. Repeat violations will be handled in accordance with the MSAN program policies.

Simply put, do not cheat and do not plagiarize. This includes copying code from the web, copying code from other students, working too closely with other students (all work in this class must be done individually), or having anyone other than yourself write your code. If you produce the same code as anyone else (or posted anywhere else), you are not putting in enough individual effort and independent thought into your the work.

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 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 http://www.usfca.edu/sds or call (415) 422-2613.

Q&A

Piazza Site

We will be using Piazza as our discussion forum for the following:

  • Promote open ended commenting and critiquing in a maintainable manner.
  • Encourage student’s to collaboratively help each other.
  • Develop a sustainable knowledge base of questions and content around visualization.
  • Fine grain anonymity controls
  • And they have polls!

Course site located here: http://piazza.com/usfca/spring2016/msan622/home

D3 Resources

Community and Tools

Courses/Books

References

General

Javascript

D3

D3 Libraries

Workflow