Design Exercise 3-1: Make Pictures
In this exercise, we will ask you to make some visualizations using the data sets on A Tale of Two Data Sets. The goal here is to give you some practice making visualizations and working with the data (you will do more work with it in subsequent assignments). A secondary goal is for you to think about appropriate uses of different visualizations types.
Basics
You will turn this assignment in on Canvas using the survey at Design Exercise 3-1: Make Pictures (due Fri, Oct 10). While this assignment is due at the end of the module, we recommend you do it early - since it is good practice for Design Exercise 3-2: Explore. This assignment requires you to upload visualizations (as picture files) and provide some textual descriptions. You should prepare these offline, and then upload them to the Canvas survey before the deadline.
For each data set, I have made a tutorial on how to work with it in Tableau (Tableau Census Walkthrough, Tableau Life Expectancy Walkthrough), and Cat has made a tutorial on how to work with it in Python with standard libraries (Seaborn, Plotly).
For this exercise, we ask that you do not “augment” (add to) the data. For example, do not find additional variables or fill in missing data from other sources.
A Word On Tools
You may use any tools you like for creating the visualizations. You may write programs to process and transform the data. You may write programs to make visualizations.
We recommend that you at least try Tableau (see the Tableau Access for CS765 Fall 2025 page that discusses getting Tableau for class).
In the ideal world, you would have time to learn about a variety of different tools (this is the “implementation” module), learn their strengths and weaknesses, and then choose the best tool for each different visualization you need. In practice, you have limited time to do this assignment. You probably want to pick one or two things and try them out. You will need to make more visualizations for later assignments, so your investment in learning about tools will be well spent. Also, the tools you learn will be useful beyond class.
You are expected to create the visualizations you turn in yourself. You can’t take pictures from someone else (there are answers to some of the prompts in the tutorials we provide). It can be OK to recreate things you’ve seen elsewhere (probably good to include your inspirations in your description).
A World on AI Tools
We allow (encourage!) you to use AI tools to do this assignment. See Course Policy on the use of Generative AI Tools.
For this assignment, you may use AI tools to help you program. You should not use them to synthesize images (unless they write the programs). Please do not use AI tools to answer the questions. Also, be sure to describe what AI tools you used and how you use them. We may ask you to show us your prompts (since we’re learning too)!
Some thoughts for this assignment:
- I have found AI assistants to be really good at helping me use Tableau. Gemini (the one I’ve been asking - because I have free access) is good about answering “how do I do this in Tableau” questions. Even better, it has been good when I ask “why” the strategies work, or what some of its choices mean. I’ve learned a lot about Tableau quickly with it.
- I have found that AI coding assistants (with various models) are good at making visualizations with different Python libraries - if you tell it what you want.
- I have found that the current AI tools are bad at making choices about visualization design. The Agentic AI (in co-pilot, for me) was remarkably good at “make a treemap using python from data file xyz.csv using columns a and b”. It even checked to make sure the image file was produced! But, since it can’t see the visualization, it made some pretty horrific choices. I’m not out fo a job yet. But, it is getting better, fast.
Turning Things In
We ask for the pictures (visualizations), answers to some questions (please do not use AI tools to write these), and a description of the tools you used.
We are not asking you to turn in your code, or show the prompts you used to get help from an AI, or … However, please keep your work: we might ask for it later (not to grade it - but so we can learn how students do these assignments).
We ask that you turn in “good enough” visualizations. We are not going to grade you on the details, beyond they should be “complete enough” to show that you’ve thought about the design. Visualizations should have titles, axis labels, legends (when appropriate), reasonable aesthetic choices, etc.
Canvas numbers questions sequentially - “Question 5” refers to the Canvas question number (rather than the way we group them logically).
The Questions…
Part A: Make These Visualizations
This assignment is backwards! Normally, you have a visualization task (scenario) and you choose an appropriate design. For these questions, we will tell you the chart type, and it is your job to figure out an appropriate use for them (using one of the two data sets) - and to make the visualization.
For each of these 3 visualizations, you need to turn in a visualization, an explanation of why its appropriate (both data type as well as possible tasks), and the explanation of how you made it.
For each of these questions, you can’t show “everything” - you need to reduce the data somehow. (e.g., you probably shouldn’t show a bar chart with hundreds of bars). You can choose either the census data or the life expectancy data for each question (you can choose per question).
Please don’t just re-create the examples we gave you in the tutorials.
A.1 Stacked Bar Chart
Make a “reasonable” stacked bar chart.
- Question 1: upload your image
- Question 2: Explain why a stacked bar chart is a reasonable choice. What tasks is the visualization good for? What does it make easy to see?
- Question 3: Explain how you made the image. (a sentence or two - please be specific about libraries, and disclose AI usage). For example “I wrote a python program using the Seaborn library. I used Co-Pilot to create the code for loading the data.”
A.2 Line Chart
Make a “reasonable” line chart - with multiple lines (an appropriate number for your “story”). The spaghetti plot I made in the tutorial is probably not reasonable (if you make something similar, you will need to explain why you think it is).
- Question 4: upload your image
- Question 5: Explain why a multi-line line chart is a reasonable choice. What tasks is the visualization good for? What does it make easy to see?
- Question 6: Explain how you made the image. (a sentence or two - please be specific about libraries, and disclose AI usage).
A.3 TreeMap
Make a “reasonable” treemap. In particular, you need to find data for which a treemap is appropriate (especially in terms of data type).
If you want a refresher on TreeMaps, I made a video (in 3 parts):
- Michael Gleicher. Treemaps 1 - Part/Whole Encodings. A Three Part Series on TreeMaps (and part whole encodings). (video)
- Michael Gleicher. Treemaps 2 - Encoding Part Whole Relationships. A Three Part Series on TreeMaps (and part whole encodings). (video)
- Michael Gleicher. Treemaps 3 - Details and Algorithms. A Three Part Series on TreeMaps (and part whole encodings). (video)
Turning it in:
- Question 7: upload your image
- Question 8: Explain why a treemap is a reasonable choice. Does it fit the data? What tasks is the visualization good for? What does it make easy to see?
- Question 9: Explain how you made the image. (a sentence or two - please be specific about libraries, and disclose AI usage).
B. A Question on The Census Data
In this question we are considering the differences between domestic migrants (people who move between counties within the country) and international migrants (people who come to the US). The Census Data has both. For these questions, we’ll consider 2023 (the file has 2020-2023).
If you prefer to work with the aggregate (state level) data, that is OK.
Do domestic and international migrants go to the same places?
Create two different visualizations that help us understand the similarities and differences in where migrants go. Upload these as Questions 10 and 11. Your visualizations should not be the same chart types.
In Question 12, describe what you can see in each one. How do your design choices make different aspects of the answer clear?
In Question 13, describe how you made both charts.
C. A milestone…
This question uses the life expectancy data. If you’re using the world bank data, use only the combined (both) for sexes. Use the years that you have data for. (this describes things as from 1960, but the OWID version of the data has reliable data even farther back).
In 1960, very few countries had a life expectance of 70 years. In 2021, a lot of countries did. In what years did countries first reach this milestone (of a 70 year life expectancy)?
(treat countries in the groups “1960 or before” or “haven’t achieved it as of 2021” as groups - or do something appropriate with the OWID data).
Visualize when this milestone occurred for different countries. I can think of many different designs. Make 2 different visualizations that show different things about the data.
Hint: this is can be simple after you perform a data transformation.
Question 14: Upload your visualization
Question 15: Upload your second visualization
Question 16: Explain your choices for the visual designs. What do your visualizations make easy to see? What design choices did you make in order to support those tasks?
Question 17: Explain how you made your visualizations.
Rubric
Remember - Canvas will you you 87 points (an AB) because it assumes you’ve done work that meets the high standards we expect in a graduate level course. When a course staff member looks at your work, they may give you more of less.
There are 5 questions, and the last two (B and C) ask for 2 visualizations.
Scoring: You will get a “low A” (90) for a “solid” assignment. This means visualizations that meet the requirements and show competent designs. It means that there are complete textual answers for each question.
We may award 1-2 points per part (A,B,C) for “exceptional” visualizations or answers. We expect most students to give “solid answers with the common designs” (which is rewarded with a low A). Doing better than this requires doing something non-standard (which is challenging given the constraints of the assignment). Creative design choices, exceptional insights into the data, etc.
We will deduce points (from 90) for problems. For example:
- Visualizations / Answers that do not fully respond to the prompt
- Visualizations that use inappropriate encodings (for example, using a part whole design with non-part-whole data)
- Visualizations that make it too hard for the viewer to see what is going on
- Visualizations that “dump data” without making choices to have a story emerge
- If the two visualizations for one part are too similar.
For this assignment, there is a lower bar on our “requirement” that you design visualizations that are effective at showing something.
Your “defense” against us not being able to see things the way you do is by explaining. If you think you’ve made a good choice to make something clear, write it in the explanation.
If we take points off for something like “no clear story” or “inappropriate encoding” or “ineffective design choice” we’re really saying “we don’t see an effective choice here and the student didn’t convince us otherwise.”
Mechanics
The data sets are described at: A Tale of Two Data Sets
Hand in your assignment with the Canvas survey at: Design Exercise 3-1: Make Pictures (due Fri, Oct 10). The assignment is due at the end of the module (subject to the standard late policy).