Formalizing Glyphs
Consider essential empirical evidence regarding encoding devices from Cleveland and McGill. Also, examine important techniques that allow us to re-use high value encoding devices. Specifically, learn more about dual axes, shared axes, and direct labeling.
Lesson Table of Contents
Video
Videos are hosted by Vimeo. You can load the video as an embed within this page or may view the video on Vimeo in a separate window / tab. If you enable on-site video, your preference will be remembered using a cookie.
Videos are hosted by Vimeo. You may disable Video Embeds or view the video on Vimeo.
Written materials
Exercise
We have a fantastic opportunity to apply recent class concepts through an exploration of US Census American Community Survey (2024) results.
Introduction: We will be working with a dataset derived from US Census data. Though originally designed for use in understanding "income gaps" between different groups of people, it can also be used to explore other questions about economics and work. It can explore differing levels of participation in different occupations, unemployment rates, and regional trends. There are a lot of variables to explore! This project will provide a space to experiment with encoding devices, data density, preattentive features, and more.
Objective: Please visualize a subset of variables from this dataset. If using shared axes, please have a clear "main plot" from which those axes are shared. For this assignment, please include 4 or more variables. For example, you could visualize unemployment and wage (2 variables) by age and gender (2 variables). This would be a total of 4 variables (unemployment, wage, age, gender).
Data: You may use the EPI Microdata Extracts directly but I recommend using the Income Gaps CSV instead to focus your time on the visual elements of this project. If you are using the Income Gaps CSV file, I also recommend using data_model.py as described in the Income Gaps CSV documentation. If using the online editor for Sketchingpy, just download data_model.py and add it to your sketchbook.
Tech: Though you may be able to complete Assignment 9 using prebuilt charts like through Matplotlib, you may find it more difficult to continue using it for later exercises where detailed control over each element of your graphic will be essential. Therefore, I recommend using Python and Sketchingpy. To help, see also the code I used for my Stack Overflow Developers Survey example.
Note that the Zulip community is not available to this MOOC. Please consider sharing your exercise via social media such as Bluesky with the tag #OpenDataVizSciCourse.
Reading
Next lecture
Works cited
This is the works cited from the lecture. Note that additional sources may be used in exercises and other supporting documentation.
- A. Pottinger, "TED Visualization," Gleap.org. Available: https://gleap.org/content/ted_visualization
- W. Cleveland and R. McGill, "Graphical Perception: Theory, Experimentation, and Application to the Development of Graphical Methods," Journal of the American Statistical Association, 1984. Available: https://www.jstor.org/stable/2288400
- "Stack Overflow Annual Developer Survey 2024," Stack Exchange Inc, 2024. Available: https://survey.stackoverflow.co/
- C. Ware, "Information Visualization: Perception for Design (Interactive Technologies)," Morgan Kaufmann, 2012.
- A. Cairo, "The Truthful Art," New Riders, 2016.
- NYT Opinion, "10 Columnists and Writers Rate What Mattered in Trump’s First Full Month," New York Times Company, 2025. Available: https://www.nytimes.com/interactive/2025/03/01/opinion/trump-administration-first-month.html.