Goals

The goal of the project is for you to develop an interactive, Web-based visualization showcasing a real-world dataset. You will need to understand the data (its types and semantics), the questions your visualization will answer, the tasks it will support, and make justifiable visualization design choices.

Instructions

You should produce an interactive, Web-based visualization that could be published to the Web. You may work individually or with a partner on the project. If you choose to work with a partner, I will expect significantly more work than I will on an individual project. The project should utilize D3 and provide custom visualizations (i.e. not the charts that applications like Excel would produce).

Steps

  1. Proposal. Due March 21, 2017 at 11:59pm.

  2. Designs. Due April 7, 2017 April 17, 2017 at 11:59pm.

  3. Presentation. Due May 8, 2017 at 11:59pm.

  4. Report. Not late until May 9, 2017 at 11:59pm.

Proposal

Submit, via myCourses, a proposal that includes

  • The name and URL of the dataset(s) you will be working with and a description of the types and semantics of your dataset. This should include necessary background information about the domain being studied. Explain any ideas and terms being examined.
  • A detailed list of the tasks you envision in your project. For example, if you are examining a dataset of taxi data, you might ask "Are there any trends between the day of the week and number of rides?" or "Which locations see the highest density of ridership?". These should be questions that cannot be answered via a simple statistical calculation; examples of bad questions include "What day had the maximum number of rides?" or "How many days are in the dataset?".
  • A sketch that shows some initial ideas about how your visualization and its interactions work. I recommend drawing by hand and scanning (or use a camera phone), but you may also use a computer drawing program.
  • A collection of ideas and requirements for your visualization and its interactions. Many projects will have multiple views and/or customized techniques. If you use multiple views, focus on how the views are linked together (e.g. linked highlighting). In addition, consider what interactive elements you would like to have (e.g. zooming, dropdown menus, transitions from one data subset to another).

I encourage you to look into using datasets that you are interested in. You may consult this list of public datasets. It is much better to have more data and filter it (if necessary) than too little data. Also, many projects will benefit from combining data from two or more sources. For example, if you analyze bike sharing program data, it might be interesting to use weather data to examine the relationships between weather and the number of people using shared bikes.

Designs

Submit, via myCourses, your current code the project and include at least three different design iterations for your visualization. This will be easier if you use version control and create versions often. Consider using GitHub. Your submission must include a table of contents that clearly identifies at least three designs you have produced. You may put all the different iterations on one web page with a table of contents section at the beginning (preferred) or on separate web pages with a separate table of contents page. The main page should be titled designs.html. Make sure to include all JavaScript and CSS files as well as the HTML files.

Presentation

You will present your final visualization during the exam period on May 9 from 3-6pm in Dion 101. By May 8 at 11:59pm, please submit, via myCourses, an index.html file that contains or links to all of your project material. This means that you may include any other files (JavaScript, data, etc.) you need for your presentation in the submitted file as well. You may also indicate, in the submission comments, whether you wish to present first, last, or in the middle. Preferences will be assigned based on when the presentation is received. Your presentation should be 4-5 minutes in length and describe the dataset and questions (1-2 minutes) in addition to showing your visualization and describing its features and your design choices. I will load all of the presentations on my laptop in Chrome to ensure we get through all of the presentations. If you submit before 2pm on May 9, you may stop by my office during the afternoon to check how your presentation looks.

Report

You have until 11:59pm on May 9 to submit your final report and code. Thus, you may submit everything at the same time as the presentation, but if you wish to fix anything after the presentation, you may do so. Your submission should contain:

Code:

  • All the code you developed for the project.
  • Include data if it is not linked directly in your visualization, or include a README with instructions on how to obtain it if it is too large (>5MB) to include.

Report (3-4 pages of text, more if screenshots are included):

  • Describe the dataset.
  • Describe the questions your visualization is designed to answer.
  • Describe the visualization you created and how its design evolved. What marks and channels are used? What techniques do you build on?
  • Describe how the visualization can be used to answer the questions.