Final deliverable due December 9 CS 7450 - Information Visualization Fall 2016

Semester Project

Set of some top projects from the Fall 2016 class.

This document describes the semester project for the course. Students should work on a project in teams of 3-4 people. Expectations will be adjusted according to group size.

The idea of the project is to take the knowledge and background that you are learning this semester about Information Visualization and put it to good use in a new, creative effort. A real key to the project, however, is to select a data set that people will find interesting and intriguing. Even better would be to select a data set with a clearly identified set of "users" or "analysts" who care deeply about that data. Select a topic that people want to know more about! I cannot emphasize strongly enough the importance of your topic and data set.

No matter what topic you choose, I am expecting a high-quality project. In particular, I'm seeking creative projects showcasing interesting ideas. A good project should consist of visualization designs and a software artifact that implements the designs. Interaction is key in information visualization, and it is difficult to understand the interaction issues in your project without a running system. I am explicitly not expecting user testing and evaluation. Ideally, I would like your efforts to be innovative and to result in some form of potential publication.

You are free to choose any software development toolkit and graphics/visualization support library that you want in order to help build your system. You cannot build on top of something that constructs a visualization for you, however, such as Tableau. Consider developing a system that is web-deployable so that your system can be shown to everyone in the world! An alternative is to develop a system for a special piece of display hardware such as a large multi-touch display. If you are interested in working on such a project, please contact the instructor since we do have such systems available.

You will have five main milestones or deliverables. First, you must form your team and settle on a topic. Second, we will hold a poster session in class in which you can display your different design ideas to get feedback. Third, and shortly after the poster session, you will submit a detailed design document. Fourth, you will give a demonstration of your project to the instructor and TA during final exam week. Finally, you will produce a short video (5 minutes or less) that explains your system and shows it in action, and you will accompany the video by a short tutorial descriptive document. All teams will show their videos in our "Video Extravaganza" during the final exam period.

Important Milestones

  • Sep 14 - Initial project description. 1-2 page document listing project members and describing topic to be addressed and data sources/formats. You should address the following questions: Make sure to describe the data and its attributes in detail. Bring 3 copies of your document.

  • Oct 5 - Poster session. This is an opportunity for you to receive feedback about different design ideas that you are considering. Each team will create a poster showcasing different ideas, and will receive feedback from a variety of people. The goal here is not to produce glossy, glitzy posters. Instead, you should illustrate a variety of design ideas sketched out well enough so that other people can understand them and provide feedback and comments. Your poster is required to have at least two "innovative view" and two "multi-coordinated view" styles of visualization designs. This is explained further lower on this page and more about it will be iscussed in class. This is an opportunity for your group to be creative and come up with many alternatives.

  • Oct 17 - Project design document. You should produce a multi-page document that provides more detail (than the initial project description) about the purpose of the visualization system, who the users will be, and what data will drive the visualization. Describe the data attributes in detail. Provide a list of analytic questions and queries that a person should be able to answer using this visualization. Next, show different design ideas for your problem, leveraging the work that you did for the poster session. Briefly explain the ideas behind each design. Finally, based on your work-to-date and feedback from the poster session and other sources, describe the design (or combination of design ideas) that you are leaning toward at this point in the process. (After this point you will settle on a design, and we will provide feedback to help with that.)

  • Dec 5 (finals week) - Project demonstration. Each team will meet with the instructor and TAs to demo their system and describe what they have done. You will need to bring three copies of a short project overview document to the demo session. The document should be a maximum of 3 pages and include the following items: team member names, problem description (1-2 paragraphs), screen shot(s) of the user interface, description of any aspect of the interface/visualization that you feel needs explanation, and a link to the web page for running the system, if applicable.

  • Dec 9 - System video. Create a 5 minute or less video that illustrates the capabilities and example use of your system. During our final exam period, we will have a "video showcase" where each team presents its video and has a few minutes available to answer questions about it. You will need to provide a link to the file or the actual video file itself to the instructor ahead of time. Use .mov or .mp4 format.


    Once your topic has been chosen, each team is required to meet 1-1 with one of the TAs at least once every two weeks. This can be a very valuable opportunity for you to get feedback about your design and implementation. Of course, you can meet with the professor as well. Failure to follow this requirement will result in points being deducted from your project score.

    To determine your grade for the project, we will evaluate the overall quality of your project, including all milestones and components. The midway project design document will be worth 25% of the total grade on the project. It is important that you make progress on the project quickly. This is doubly beneficial as it allows more time for your implementation.

    The following questions will be important during that evaluation process.

    The grade earned for the project will be a team grade, that is, all team members will earn the same score for the project. However,the professor reserves the right to adjust individual team member's scores either upward or downward to support especially strong or weak performance and contributions to the group effort, as much as he can objectively determine. It is acknowledged that not all team members will bring the same skills to the group. It is each member's responsibility, however, to make a significant contribution in whatever way that best matches his or her abilities.

    Tips for a Successful Project

    It is extremely important to select an interesting problem with data that some group of people will care deeply about. I cannot stress enough how vital it is to start with interesting data. Find some topic that almost everyone cares about (e.g., baby names, feature films) or that some subset of people really care about (e.g., sports data, politics). Consider combining different data sets to produce a new composite data set of special interest. Such a fusion of data often creates a data set that people want to learn about. You may need to take a few weeks of the semester where you simply focus on data acquisition. That's OK. If you do not have your data nailed down by the poster session then you will be in deep trouble.

    Most of the really successful projects of the past from class have been in one of two styles, the single innovative visual representation or the multi-view, effective existing technique coordinated system.

    In the first style, your team will create a visualization system that likely has only one view/representation (or perhaps a couple) but this representation is a new and innovative technique or visual metaphor. Here, you should focus on designing a creative new visual representation. The actual user interface may have different components or pieces, but it should be tightly integrated. The real focus here is on creativity and innovation. A few external examples of this type of project are:

    The second type of successful project employs multiple coordinated views where each view may use some well-known visualization techniques, perhaps customized a little for this problem. There is likely nice filtering and interactive selection and focus in in the interface. The emphasis in this type of project is to create a sound, functional system implementation that clearly can be of help for data analysis and understanding. It is important in this type of project to have coordinated views that work well together and provide different perspectives on the data. This type of project does not have the same level of visualization innovation as the first, but it comes together in a strong system implementation. It is really more of a software engineering effort. A few external examples of this type of project are:

    One way to create a poor project is to have each group member go off on their own and implement a different view, where the views have relatively little to do with each other. Systems like this usually have an interface where the user picks one of the views, and then that view takes over the window or screen, having very little to do with the other views. I don't consider this to be a very good example of an effective information visualization.


    Where do you get your data from? Be creative! You may have to scour the web and scrape some information. You may have to manually log and generate data tables. You may have to coalesce multiple different data sources. Part of your responsibility on the project is to come up with the data needed to drive your visualization. It is a crucial and vital initial step! Ideally, you should start with a problem or domain, find someone who knows more about it, and then look for data from there. Don't start your project simply by looking for any old dataset. Be more problem-driven than that. Below are some quick examples of places with nice data repositories. Also, consider organizations that run contests for developing visualizations. They can often serve as good sources of problems and data. Some examples are:

  • National Institute of Justice
  • Bank of England
  • Perceived vs. actual student interest, spatio-temporal analysis