Due in four phases IAT 355 - Introduction to Visual Analytics Fall 2020

2-Person Team Project: Visual Analysis of Either Email, Parking Tickets, or Your Own Data


Quick access to the sections of this document:

Project Overview

You will undertake a group project (2 people) to design and build a prototype visualization of EMail Data, or Vancouver Parking Ticket Data, or your own data.

I am looking for something more than a scatterplot + parallel coordinates.

Email Dataset files:

Vancouver Parking Ticket files:

You must use D3, or Java and/or Processing, or for this project.

    Each project group will be graded as a team. That is, each person receives the same grade if each person contributes equally. At the end of the project, I will ask each student how much each team member contributed, including themselves. Lack of participation will result in a lower grade. Great teams have great contributors, each contributing equally. Within the team, you must negotiate on how much and what each of you will contribute. Think carefully about your teammate: Where do each of you live and what hours do you work? Where will you meet? What skills does each individual bring to the group (computing, programming, design, evaluation, statistics, etc.)? I would strongly encourage you to form a balanced team with a pair of individuals with complementary skills.

Project Reports

Each part of the project will include a deliverable report. This report will be handed in on paper and uploaded to Canvas, with supplementary material uploaded to Canvas.

The format of the reports for the individual parts is up to you, but it should be professionally prepared, expressive, grammatically sound, illustrative of your efforts and process, and easy to understand. A good design effort can easily be hampered by a poor communication of what was done.

Part 1 - Design Sketch + Data Acquisition

Due March 9    In Class

Your report on this first part will explain what data your project will visualize, how your visualization tool will visualize it, and what interactions will be supported.

What data your system will read and display. I need to see a fragment of an actual data table/data file that you will read. If you choose emails, you can use my file format, or you could extend it. The purpose of this requirement is to help you quickly solve the problem of getting accessible data. The sooner you solve this problem, the better.

Deliver a brief sketch of what your visualization tool will do, and how it will do it. Sketch what your system will look like, and what interactions it will support.

At the end of Cognitive Lecture Slides is a list of Tasks that a good Visualization tool should support. Use this list to inform your design.


Advice on how to make a good Visualization:

  1. Do One Thing Well

    The best thing to do is to concentrate on a single visualization idea and build it well

  2. Learn the Libraries available for you to use or extend.

    Use the full facilities of the development system you have chosen. D3+Javascript and Java each have many utlitiy libraries that can help.

  3. Read Pre-Cooked Data files of real data.

    It is perfectly accepable for you to grab data from somewhere and handcraft a data file that is easy for your program to read.

  4. Sit Properly

    Now you think I'm joking, eh? I'm not. If you happen to put in marathon sessions working on your project, think hard about what you're doing to your hands and back. Take frequent breaks. Sit correctly. You will never get that dream job if you have no hands left. Please read the Typing Injuries FAQ.

  5. Get plenty of Fiber

    Ok, I'm only half joking.

Part 2 - Interim Implementation

Due April 7 last class day    Demo Progress in Class

We want to see a demonstration of progress on your project. Show off the visualization you have done so far, and briefly explain what is to be done next.

Input Module: Be sure to have implemented the code that implements the file reading functionality.

Display Module: Be sure to have implemented the code that displays something relevant to your project.

You will get a low grade on this part if you have not completed input & display.

Part 3 - Final Written Submission

Due April 18  

You should have a complete visualization by this time. It should read a data file, and display it.

Components of your Submission:

  1. Deliver the Code: Upload the code you have developed by this point. Your upload must be complete. Don't ask me to find libraries that the code needs.

  2. Report: Write a report that describes the Questions that your visualization is intended to answer, the Visualization approach that you took, and briefly explains your code. You should also include a brief user manual.

  3. Video: Show a brief Video that illustrates your work. Either a YouTube link or a video file upload is acceptable.

Your report will be graded on:

Part 4 - Final Demo

April 18   

After you hand in your report, demonstrate your system to the Prof & TA. Demos will take place on April 18 4:00-6:00 in Room 2750 You can use the time between April 6 and April 17 to further improve your work.

Personal Contribution Writeup

In addition to the Final Demo, each team member must separately turn in one page describing that person's individual contribution. We are primarily interested in a detailed description of which parts of the code and design you were responsible for.


Each group member must distribute 100 points among the members of your group, including yourself. The number you assign to a member is an assessment of the quality and quantity of their work. More points = better work/more work. You must hand out all 100 points.
Groups that function well most likely have an even distribution.

You can put this report in a sealed envelope if you like.
You must each bring your rating on the demo day or on Exam Day (Monday April 20).