Homework Assignments (HW)

These individual assignments will help you develop your knowledge for design principles for Information Visualization. For each of these, the deadline to submit your work is by the start of class on the day they are due. Unless otherwise described, the submissions must be submitted via Canvas. When submitting on Canvas, make sure you submit a .zip containing all your files, and name it (e.g.,, unless otherwise mentioned in the assignment.

The grading distribution is broken down as follows.

HW assignments are broken down as:

  • HW1: 1%
  • HW2: 5%
  • HW3: 11%
  • HW4: 8%

Programming Labs are broken down as:

  • Lab1: 1%
  • Lab2: 2%
  • Lab3: 3%
  • Lab4: 4%
  • Lab5: 7%
  • Lab6: 8%
  • Lab7: 15%

Homework 1: Survey

Link to survey in the description for HW1 in Canvas.

Homework 2: Data Exploration and Analysis

The purpose of this assignment is to provide you with some experience exploring and analyzing data without using an information visualization system. Below is a data set (that can be imported into Excel, or any other data viewer you want to use) about cereals. You should explore and analyze this data using Excel or simply by hand (drawing pictures is fine), but do not use any visualization tools. Also, your should avoid the visualization and charting functionality of Excel for the purpose of this assignment. Your goal here is to perform an exploratory analysis of the data set, to better understand the data set and its characteristics, and to develop insights about the cereal data.

Submission: What you turn in should consist of four things.

  1. List (bullet list of items) five analytics queries or questions that a person may have about this data set. These would be questions that an analyst examining the data might be pondering.
  2. List (bullet list of items) five “insights”, chunks of knowledge, or deeper questions that you either encountered or gained while exploring the data. An insight could be some understanding of the data and its characteristics that is not relatively obvious or intuitive. It is something that most people might not realize initially. Note that an insight or knowledge chunk simply may be a deeper question that arose in your mind while exploring the data. And your analysis may not have been sufficient to answer the question.
  3. Write one paragraph about the process you used to do the exploration and analysis. Did you load the data into Excel, work manually, or do both? What did you do in Excel? Did you draw pictures? Did you take notes? What did you take notes on? What did you draw? This paragraph should be a general description of you analytic workflow.
  4. Write one paragraph about challenges or problems that you encountered in doing the analysis this way. Did anything limit or frustrate you? If nothing did, perhaps there was something that was more difficult than you thought it should be. Nothing is perfect, so you should be able to list some potential issues here. So, to sum up, your assignment should have two bullet lists of five items followed by two paragraphs. 

Grading: We will evaluate the quality of the insights you listed and the detail given for the process you went through. We are looking for things that we find interesting or perhaps unexpected. This is subjective. For the second and third parts, we will evaluate if you did what the assignment asked.

Dataset. The dataset is in the “Datasets” folder in the Files section of Canvas. The data should be pretty self-explanatory. The Manufacturer is a one letter code with the expected mapping (Q-Quaker Oats, P-Post, G-General Mills, K-Kelloggs, R-Ralston Purina, N-Nabisco). Type stands for C (cold) or H (hot). Shelf stands for which row on a shelf the cereal is on (1=bottom, 3=top). The rest are attributes that describe the nutritious contents of the cereal.

Homework 3: Visual Design

details tba 

Homework 4: Use and Critique Tableau

details tba

Programming Labs (Labs)

These individual assignments will teach you the basic skills for developing web-based visualizations. You are expected to complete these assignments using d3.js.

It is good practice to develop your assignments using some sort of version control. GaTech gives you access to GitHub, which is a good one to use if you haven’t done so already.

D3.js is the Javascript InfoVis toolkit we will use for the programming assignments. Go through the following short tutorial on the fundamentals and set up of D3.


When grading, we will use Google Chrome in Incognito Mode to run your visualizations. Further, when a server is required, we will use a python server on localhost.

When submitting on Canvas, make sure you submit a .zip containing all your files, and name it (e.g.,, unless otherwise mentioned in the assignment.

Warning: There are many existing examples and source code widely available online. While these are great resources for you to learn, note that copying these is considered a breach of the rules from the Office of Student Integrity, and will be handled accordingly. Be careful and thoughtful. Many of the assignments will ask you to start from existing source code or examples. In these cases, it is expected that parts of your assignments will resemble the original. You are expected to start with these templates and build your submission to the assignments from there.

The labs start relatively simple, and increase in complexity throughout the semester. The due dates for the labs are listed on the Schedule and on Canvas. The labs can be accessed on the GitHub repo here: Notice that in order to access this repo, you must use your Georgia Tech Github account.

Carefully read through the Wiki for each Lab for instructions, submission requirements, etc. Remember, when you clone the labs, please make sure that you do not publicly share your code to avoid inadvertent plagiarism.


The purpose of the pods in this course is to have you get into groups, find interesting visualizations in the wild, discuss their pros and cons, and share your findings with the class. For each Pod assignment, you are required to do the following:

  1. Sign up for one of the topics listed in the spreadsheet (link will be shared via a Canvas message to the course)
  2. Meet with your team weekly
  3. Find 1 visualization on the web that you want to report on.
  4. Before the due date, create a Canvas Discussion with the following information:
    1. Title of your Post should match the topic (row) of the spreadsheet.
    2. A link to the visualization
    3. A photo (screenshot is fine) of the visualization you discussed
    4. A short description of the visualization (in your own words, not taken directly from the website). This should be 1 paragraph long.
    5. One paragraph about the Pros (things that were done well)
    6. One paragraph about the cons (things that were not done well or could be improved)

When you’ve created the post. Create a PDF of your discussion page (print the page, screenshot, etc.) and upload it to the Canvas assignment before the due date. Each team member must upload a pdf to receive credit.

Check the schedule  for the due dates of each Pod.