CS 725/825 - Information Visualization
Spring 2017: Wednesdays, 9:30am-12:15pm, E&CS 2120

Print - Admin





Assignment Guidelines

CS725 @ GitLab

Paper Presentations

Project - updated


Tableau's data visualization software is provided through the Tableau for Teaching program.


Course Overview

"The purpose of visualization is insight, not pictures." -Ben Shneiderman

Catalog Description: This course covers the theory and application of information visualization. Research on graph design, visual perception, cognition, and interaction will be covered. Research and practical techniques for the display of graphs, networks, hierarchies, text, and complex multivariate data will be addressed. Course projects will require the development of interactive web-based visualizations.

The main goal of this course is to equip you with the background and tools needed to develop effective visualizations in your own research and future work. Part of developing effective visualizations requires analyzing existing visualizations and visualization problems. One important piece of developing an effective visualization is knowing what not to do. In addition to studying recommended approaches, this course should also prepare you to rule out visualization approaches where there are mismatches in human capabilities or perception or mismatches with the intended task.

In particular, after completing this course, you should be able to do the following:

  • Explain at a high-level the "what-why-how" framework for analyzing visualization use.
  • Given a visualization, identify the actions the vis allows and the targets of those actions.
  • Transform domain-specific tasks into the task abstraction framework.
  • Given an academic paper, identify the presence or absence of the four levels of vis design and validation.
  • Describe the channels of visual encoding and order them from most effective to least effective.
  • Identify a visualization where an inappropriate arrange design choice was made and explain why the choice was inappropriate.
  • Explain the importance choosing an appropriate colormap.
  • Use R, D3, and Tableau to create simple visualizations.
  • Use D3, Tableau, or another toolkit to create an effective interactive web-based visualization of real-world data.
  • Explain and defend the design choices that you made in creating your web-based visualization.

Note that there is a distinction between information visualization and scientific visualization (which we will not study). Scientific visualization focuses on data that has a real, physical representation, such as structures in the human body. Information visualization deals with ways to represent abstract data.

This course will be organized based on the "flipped classroom" model. Students will be assigned readings and homework that will be due before class time. There will be few, if any, lectures by the instructor. Class time will be spent on discussions of the assignments, student presentations, and in-class work. It is essential that each student be fully prepared to participate in class discussions each week.

Class Tools:



There are no specific course prerequisites for this course. But I expect you to be comfortable learning new programming languages/tools/APIs and be familiar with Unix. If you need a refresher on Unix, see the CS 252 webpage.

You should also be familiar with HTML, CSS, Javascript, and jQuery. There are many excellent resources available online for these common web languages. Some can be found in the notes from my previous CS 312 and CS 418 courses.

Course Materials

The required textbook for this course is Visualization Analysis and Design by Tamara Munzner (textbook errata)

There are several other useful books that you might want to refer to:

For writing help, I always suggest two inexpensive books:

  • Writing for Computer Science by Justin Zobel
  • The Elements of Style by Strunk and White

In addition, see the online writing resources collected on the ODU-CS New Student Resources page.

We will also be studying academic papers in the field of information visualization. These papers are typically available through the ACM Digital Library (off-campus) or IEEE Xplore (off-campus). You can also usually append proxy.lib.odu.edu to the host part of an ACM DL or IEEExplore URI to get access off-campus.

We will often do in-class programming exercises. Each student must bring a laptop or work with another student who has a laptop.

We will also often do in-class design exercises. Each student must bring paper and pencil/pen to class each week.


Online Sections

There are some students participating in the course online. The audio and projected slides/images from our class meetings will be recorded using WebEx. Online students may join the WebEx session during class time or they may listen to the session afterwards (links will be posted in Blackboard). All students will participate in the same online discussions using Blackboard.

Deadlines are the same for in-class and online students. If something is due before the next class meeting, that means it is due before 9:30am Eastern on Wednesday.

Assignment Types

Your grade in this class will be based on the following components:

Participation - 20%

  • attendance
    • rubric: 0 - absence or late to class, 1 - on time to class
    • online: attendance is counted as logging into Blackboard and viewing the WebEx video from the week's class meeting before the next class meeting
    • in addition to being present, students are expected to be prepared to talk about examples and figures in the required readings, explain learning checks, and discuss their homework submissions
  • in-class work (ICW)
    • grade is based on student's activity in Gitlab for ICW and quality of note-taking (when assigned)
    • rubric: 0 - absence or no work, 1 - minimal activity and/or minimal notes, 2 - substantial contribution to group and/or high-quality notes
    • online: students must comment and contribute to Gitlab discussion of the ICW

Homework Assignments - 20%

  • learning checks
    • rubric: 0 - not submitted, 1 - answered some questions or late submission, 2 - answered all questions and submitted on time
  • visualization implementation
    • grading scale: 0-10, where 10 is the absolute best (don't expect to get 10s on a regular basis)
    • late assignments have a maximum score of 8

Presentation - 20%

  • 10 minute presentation of an academic paper

Project - 40%

  • Basic idea: Develop a new, creative, interactive visualization of some data that you care about
  • Required components include project milestones, final presentation, demo video, and paper

Details relating to the presentation and project will be provided later in the semester. See my InfoVis Gallery for examples of past student projects.

Grading Scale

The grading scale is as follows:

% letter grade
94-100 A
90-93 A-
87-89 B+
84-86 B
80-83 B-
78-79 C+
74-77 C
70-73 C-
0-69 F

Late Assignments

Any assignment submitted after its deadline is considered late. Submissions over 48 hours late are not accepted. This time limit includes weekends -- they are counted just like weekdays.

I reserve the right to specify that late submissions will not be accepted for particular assignments.

Course Policies

Typical In-Class Agenda

  • Discuss vis implementation homework related to previous week's topic
  • Intro/overview/objectives of this week's topic
  • Discuss learning checks
  • Discuss confusing points (addressed anonymously)
  • Student presentation
  • In-class vis design work
  • Assign vis implementation homework
  • Wrap-up, point to next topic and week's assignments


Students must sign up for the class email list. You do not have to use an ODU email address -- sign up with any email address that you would check daily. I will use this list to send out important updates (assignment deadline changes, class cancellations, office hours cancellations, etc.). You should also use this list to ask (and answer) general course-related questions.


Since much of the course is based on discussion and in-class work, I expect you to attend class and to arrive on time. Your grade will be affected if you are consistently tardy. If you have to miss a class, you are responsible checking the course website to find any assignments or notes you may have missed. (Remember that audio and projected items will be recorded through WebEx and posted on Blackboard.) Students may leave after 15 minutes if the instructor or a guest lecturer does not arrive in that time.

If there are days on which the scheduled class meeting time is cancelled due to weather, there may still be assignments made and due. We have an online section for this course, so all materials will be made available. An email will be sent to the class email list whenever the class meeting time is cancelled.

Group Work

Some assignments may be done in groups -- consisting of at most 2 people. Groups exist solely on the mutual agreement of both parties. At any time, if either member wishes to dissolve the group, the group will be split. No new teams can be formed after the first group assignment is due. Members of the split group will have access to the shared code base at the time of the split.

We will be using the ODU-CS Gitlab Community. Once the class is over, you can easily import your projects to GitHub. Don't be surprised if you are asked for your github account when you interview for jobs.

Classroom Conduct

Please be respectful of your classmates and instructor by minimizing distractions during class. Cell phones must be turned off during class. Laptops must be closed during student presentations.

Make-up Work

Make-ups for graded activities are possible only with a valid written medical or university excuse. It is the student's responsibility to give the instructor the written excuse and to arrange for any makeup work to be done. A makeup exam may be different (and possibly more difficult) than the regularly scheduled exam.

Disability Services

In compliance with PL94-142 and more recent federal legislation affirming the rights of disabled individuals, provisions will be made for students with special needs on an individual basis. The student must have been identified as special needs by the university and an appropriate letter must be provided to the course instructor. Provision will be made based upon written guidelines from the University's Office of Educational Accessibility. All students are expected to fulfill all course requirements.

Students are encouraged to self-disclose disabilities that have been verified by the Office of Educational Accessibility by providing Accommodation Letters to their instructors early in the semester in order to start receiving accommodations. Accommodations will not be made until the Accommodation Letters are provided to instructors each semester.

Seeking Help

The course website should be your first reference for questions about the class. If you have questions about course requirements or materials, post (and answer) questions using the class email list.

The best way to get help is to come to office hours. If you cannot make office hours, please send an email to setup an appointment.

I am available via email, but do not expect or rely on an immediate response.

Academic Integrity / Honor Code

By attending Old Dominion University you have accepted the responsibility to abide by the honor code. If you are uncertain about how the honor code applies to any course activity, you should request clarification from the instructor. The honor pledge is as follows:

"I pledge to support the Honor System of Old Dominion University. I will refrain from any form of academic dishonesty or deception, such as cheating or plagiarism. I am aware that as a member of the academic community, it is my responsibility to turn in all suspected violators of the Honor Code. I will report to a hearing if summoned."

In particular, submitting anything that is not your own work without proper attribution (giving credit to the original author) is plagiarism and is considered to be an honor code violation. It is not acceptable to copy source code or written work from any other source (including other students), unless explicitly allowed in the assignment statement. In cases where using resources such as the Internet is allowed, proper attribution must be given.

Any evidence of an honor code violation (cheating) will result in a 0 grade for the assignment/exam, and the incident will be submitted to the Department of Computer Science for further review. Note that honor code violations can result in a permanent notation being placed on the student's transcript. Evidence of cheating may include a student being unable to satisfactorily answer questions asked by the instructor about a submitted solution. Cheating includes not only receiving unauthorized assistance, but also giving unauthorized assistance. For class files kept in Unix space, students are expected to use Unix file permission protections (chmod) to keep other students from accessing the files. Failure to adequately protect files may result in a student being held responsible for giving unauthorized assistance, even if not directly aware of it.

Students may still provide legitimate assistance to one another. You are encouraged to form study groups to discuss course topics. Students should avoid discussions of solutions to ongoing assignments and should not, under any circumstances, show or share code solutions for an ongoing assignment.

All students are responsible for knowing the rules. If you are unclear about whether a certain activity is allowed or not, please contact the instructor.

More information on academic integrity is available on the ODU-CS academic integrity page.