Design Warmup 2: Make Some Visualizations

The goal of this Design Warmup is to give you practice using tools to make visualizations with data, and specifically to work with the data set you will use next week (the life expectancy data). You will turn this assignment in on Canvas: Design Warmup 2: Make my visualizations (due Fri, Oct 16). Prepare your answers offline, ahead of time.

Part A uses a small data set from the Washington Post.

For Parts B-D, you will use the Life Expectancy data, described on A Tale of Two Data Sets....

You may use whatever tools you like for this assignment. You will learn about some options in the readings, or you might want to try Tableau (see Tableau Access for CS765). There is a tutorial on using Tableau with the Life Expectancy Data: Tutorial Tableau Walkthrough 2: Life Expectancy .

You may use AI tools to help you create the visualizations - but be careful, and don’t let them get in the way of learning the visualization lessons. See the policy detail below.

AI Policy Details for Design Warmups and Design Exercises

I am giving you (students) broad permission to use AI tools/agents, and relying on your judgment to use it in a responsible way that does not get in the way of your learning. Rather than trying to specify what is or isn’t acceptable, I ask that students use their judgment, honestly disclose their usage, and reflect on it.

The broad range of AI use makes a simple policy hard. When you create visualizations, AI tools can be anything from an assistant on using visualization tools to an automated approach to creating visualizations. You might try everything from “make the visualization specified in this assignment” to “tell me which button to push in Tableau to change the marks from red to purple.”

The AI tools can also do other aspects of data analysis. You can ask an AI agent “make 5 different visualizations from this data set showing different aspects of it, and explain what each one shows.” Or even “find something unusual in the data.”

For me, there is no clear line between “AI does it for you” and “AI is helping you do it by taking care of the boring bits.” So, I ask you to use your judgment: use AI tools in a manner that fits the spirit of the assignment, where you are getting the experience of designing the visualizations and practice at making the decisions and thinking about how to effectively show the things that you want to show.

Having AI do too much for you gets in the way of you experiencing the designing and creating, which I think is essential for learning.

Aside: Learning about AI tools

The goal of this class is for you to learn about visualization. You might use AI tools to help you make visualizations, to design them, or even to learn about them.

There is a different goal: learning about AI tools. Rather than learning about visualization, the goal could be to learn how to use AI tools to efficiently do work (for example, assignments asked of students). This is not the goal of this class.

Asking your AI agent to write programs to process data, or even to help write programs to make visualizations you describe, is generally acceptable.

My goal is that you should learn about visualization. You can actually learn a lot by using an AI agent and, when it does something for you, asking why.

You should be involved in the choices of how visualizations are created. Generally, this means making the choices of which environments/tools are used (e.g., to use Python and a particular library). However, you might ask an AI “We are going to make some (describe visualizations) by writing Python programs. What visualization library might you recommend?” (I use Python as an example: AI agents seem to know about many languages and libraries. They are also good at reading the tutorials for interactive systems like Tableau.)

So, I am going to trust students to use AI responsibly. This means following the main rules AI Policies. But some specifics:

  1. I will explicitly ask if and how you used AI tools for the assignment. Please be specific about what tools you used and how you used them.
  2. I would like your prompts (there will be a separate question for that). Please provide them as much as possible. This is mainly for me to learn from.
  3. I will ask “What did you do to make sure that the AI tools did not get in the way of your learning.”

If the goal is to learn about visualization, trying to one-shot prompt to get an AI agent to do the assignments is unlikely to give you the experiences that help you learn about visualization design. If the goal is to see if current AI models are capable of doing these assignments, trying the prompts yourself is a waste of your tokens: the course staff has tried it, and has confirmed that the AI tools are good at it. You won’t learn much by doing it.

Part A: Make this Visualization (Simple Data)

This data/visualization comes from the Washington Post article See which jobs are most threatened by AI and who may be able to adapt. This article is paywalled - but if you want to read it, the Madison Public Library gives all residents of Madison free access.

01b_jobs-vulnerable-exposure-adapt-scatter.png

A graph of AI exposure and adaptability.  From the Washington Post See which jobs are most threatened by AI and who may be able to adapt.

The data has over 300 job titles. For each, there are 2 “key measures”: exposure (how likely AI is to take over), and “adaptability” (how likely are those people to be able to adapt to new jobs). It also includes a derived quantity “vulnerability” that Claude reverse-engineered as: v=e⋅(1−a)v = \sqrt{e \cdot (1 - a)}, and two other facts (the number of people employed, percent women).

Your job is to “reproduce” this chart using two different tools. I use reproduce in scare quotes, because the goal is to copy its essence, not its details. Don’t worry about interactivity, or the callouts (although, you might try to add callouts). The idea is to produce a scatterplot, preferably adding 2 other variables in other channels. (They use size for number of people and color for vulnerability).

The idea is for you to do it using two different “tools.” For example, you might try to make it in Excel and Tableau. You might try to make it using two different Python libraries (if you pick the two libraries route, try to pick ones that are meaningfully different — like a high-level toolkit and a grammar-based toolkit). See the AI policy (above). Please do not give an AI agent the picture and say “write a program to reproduce this”.

My preference: pick a grammar-based “tool” as one of them (e.g., Tableau or a library like ggplot, Vega-Lite, or Altair). As part of the content survey, you will need to use one of these. This will give you something real to try.

The evaluation metric is not the reproduction quality - getting a “good enough” scatterplot is sufficient, although we encourage you to figure out how to get good titles, axis labels, extra variables, …

If you use AI to create one (giving it the data, describing the visualization), be sure to understand and describe how it made the visualization. It will probably be happy to explain. Claude, at least, has opinions on what libraries it prefers. Also, if you use AI (even just to help you write programs or figure out which buttons to push in Tableau), you must give us your prompts (at the end).

For this you must turn in on Canvas:

  • Question 1: Visualization 1
  • Question 2: Describe the tool you used for visualization 1 and how you did it. (a few sentences)
  • Question 3: Visualization 2
  • Question 4: Describe the tool you used for visualization 2 and how you did it. (a few sentences)
  • Question 5: Compare the two. Did you hit roadblocks with one or the other? Looking ahead, how might you choose between these tools in the future? (even if it’s “I hate it and will never use it again!”)

Part B: Make This (Kind Of) Visualization

Use the Life Expectancy data, described on A Tale of Two Data Sets.... A big part of this question is for you to confirm you can work with it.

This part 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 versions of the life expectancy data) - and to make the visualization.

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).

Please don’t just re-create the examples we gave you in the tutorials.

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 6: upload your image
  • Question 7: 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? What scalability strategies did you use (using the terminology from the papers)?
  • Question 8: Explain how you made the visualization. (a sentence or two - please be specific about libraries, and disclose AI usage).

Rubric: the goal here is for you to show that you can work with the data, understand when to use a line chart, and apply scalability strategies appropriately.

Part C: Solve a Visualization Problem

This question uses the life expectancy data. If you’re using the world bank version, use only the combined (both) 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 expectancy 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)? Is there a story in this?

(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. Don’t just make a table (yes, this is a visualization). But imagine what a table might look like (or make it, but don’t turn it in).

Hint: this can be simple after you perform a data transformation.

Question 9: Upload your visualization

Question 10: Explain your choices for the visual designs. What does your visualization make easy to see? What design choices did you make in order to support those tasks? Hint: think about what your visualization shows that would be hard to see with just the table.

Question 11: Explain how you made your visualization.

Rubric: An emphasis here is using a data transformation in your workflow. The design/story is practice for future assignments. Your answer to question 10 is the key here as it not only can convince us that your visualization is effective, but also show that you can connect with the principles in class.

In the past we asked you to make 2 different visualizations for this - I recommend you do that, and just turn in the best one.

Part D: Thinking about the data

Question 12: Give a question about the Life Expectancy data set for which the data is insufficient to answer. (one sentence; if you want to give a second question you can have that too)

Question 13: Give a question about the Life Expectancy data set that is likely to be sufficiently answered by a number, sentence, or simple table and not require a visualization.

Question 14: Give a reason why a (good) visualization may still be worthwhile to create (e.g. it adds value over the simple answer) for your question in the previous question.

Part E: AI Disclosures

Question 15: How did you use AI tools in completing the assignment? Please be specific. If you didn’t use any, say so explicitly.

Question 16: Provide the prompts that you used. If it’s too hard to put it into the type-in box, say that you have a ZIP file (and we will make arrangements with you to deliver it to us). (say N/A if you didn’t use AI tools)

Question 17: What did you do to prevent AI from getting in the way of your learning? What did you do to have AI enhance your learning? (“I didn’t use AI” is an answer to this).

GenAI Disclosure:

Claude scraped the data for me and figured out what the vulnerability score was.