Project Five - Freeform
Objectives
- Apply the skills and concepts you have learned in the class to personally meaningful project
Getting started
This project is another group project for teams of 2-3.
Start the project by accepting the assignment on GitHub Classroom. As this is a group assignment, you will need to pick your team when you accept the assignment, so coordinate who is going to create the team.
While I have given you starter code for a freestanding visualization, I encourage you to continue to use Observable for experiments and quickly trying things out.
Make it personal
For the final project, you have near complete freedom to do what you like. The data is up to you as is the type of visualization. Some possibilities include
- an exploratory data analysis tidied up into a report
- narrative visualization in any of the forms we have talked about
- interactive dashboard
- data art where the aesthetics are more important than the ability to recover the data
At this point, we have spent time talking about various statistical visualizations, geospatial visualizations, and we will shortly add graphs and hierarchies. These are all fair game. You can also make your own visual representations as you did for your first project.
Requirements
The final piece must include an actual visualization. In other words, the visual marks must be algorithmically derived from the data (with the conceptual reverse function to recover the data from the visual form).
Your final project should have at least one bespoke element. This just means something that is not a basic statistical visualization. This could mean using one of the more exotic visualization forms that we have seen (or that you can find in the various galleries for D3). It could mean adding an annotation layer. It could mean that you create custom glyphs or create bar charts from stacks of cow images. It could even mean completely inventing your own visual representation.
Your project should make use of animation, interaction, or some combination of the two.
Your final project should be sufficiently complex to be demonstrate what you have learned this semester.
Reflection
To accompany your project, I would like a reflective document that describes it. Please put this in the README of the project.
The reflection should have the following pieces:
Description
What are you visualizing? How do we interact with it?
Design Rationale
I would like a full description of what you are visualizing and the process. For each design decision that you make (visualization type, individual encodings, color schemes, data selection, etc...), I would like a short discussion of why you made each choice. Some examples:
-
I used a pie chart for looking at the Seattle weather data because I was most interested in representing the various weather conditions as parts of a whole. There are only five different elements, and most of them are variations of one category (precipitation) so the problem of having too many slices in the pie was not a problem. Also, I decided that the actual percentages were not as important as providing a general sense of the basic ratios between the weather types.
-
The color scheme for the weather pie chart was chosen to mimic the weather that it represents (e.g., yellow = sunny, grey = foggy, blue = rainy, white = snow). The data is categorical, so was desirable for the colors to all be clearly distinct, and all of these vary in hue, the second best encoding after position for categorical data.
-
The precise color blue in the Doctor Who visualization tutorial is "Tardis blue", the "official" color of the Doctor's ship on Doctor Who.
Overall process
I would like a description of your process of developing the visualizing. This could include original sketches and Observable notebooks used for exploratory data analysis.
Critique
Your critique of the work. Tell me what works well and why. Tell me what you are less happy with. Describe any problems you encountered that you couldn't figure out how to overcome and places where you made compromises to your vision.
Submission
To submit, make sure that your project is pushed to GitHub. Then submit the URL of the GitHub repository to Canvas .
Last updated 12/02/2021