Data Visualization & Storytelling
Turn analysis into charts people read correctly: visual principles, matplotlib and seaborn, small multiples, dashboards and a short data story.
Leads to: Data Analyst, Data Scientist, Statistician, Operations Research Analyst
Before you start
This course builds on Intro to Data Analysis with Python and Spreadsheets for Data Work. Take them first if you are new to the topic.
About this course
Analysis only matters when someone understands it and acts on it. This intermediate course teaches the visual side of data work that data analysts, data scientists, statisticians and operations research analysts use every week. It builds on Intro to Data Analysis with Python and Spreadsheets for Data Work. The first module is about perception: which visual encodings people read accurately, how to match a chart type to the question being asked, and how to remove clutter so the message stands out. The second module builds charts in Python: labelled line and bar charts with matplotlib, distributions and relationships with seaborn, and small multiples that compare many groups at once. Because chart images cannot be auto-checked in the browser, the coding exercises have you compute the data behind each chart (sorted bars, monthly totals, histogram bins, shared axis limits) with pandas and NumPy, while the lessons show the plotting code to run on your own machine. The third module moves from single charts to communication: sketching a dashboard for one audience, building one in a free BI tool such as Looker Studio or Power BI Desktop, and presenting a three-slide data story with a clear recommendation.
Course content
Module 1
Visual Principles
3 lessons · 1h 28mLearn how people decode charts, pick the chart that answers the question, and strip away clutter so the message is obvious.
- 18mHow people read chartsReading
Pick visual encodings that people decode quickly and accurately, and use pre-attentive attributes to direct attention.
- 15mChoosing the chartReading
Match the chart type to the question: comparison, change over time, distribution, relationship or part-to-whole.
- 55mDeclutteringReading
Remove chart junk step by step so the data and the message are the first things a reader sees.
Module 2
Charts in Python
3 lessons · 3h 3mBuild labelled line and bar charts with matplotlib, distribution and relationship plots with seaborn, and small multiples for comparing groups.
- 1h 27mMatplotlib essentialsReading
Build a clearly labelled line chart and bar chart with matplotlib's figure and axes interface.
- 41mStatistical chartsReading
Use seaborn to plot distributions and relationships, and understand the bins and statistics behind each plot.
- 55mSmall multiplesReading
Compare many groups with a grid of small, consistent charts instead of one tangled chart.
Module 3
Dashboards and Stories
3 lessons · 2h 58mDesign a dashboard for one audience, build it in a free BI tool, and present a short data story that ends in a decision.
- 49mDashboard designReading
Sketch a dashboard for one audience by starting from their decisions, choosing a few KPIs, and laying them out by priority.
- 1h 17mBI tools tourReading
Understand what BI tools do and build a small interactive dashboard in a free tool such as Looker Studio or Power BI Desktop.
- 52mPresenting a data storyReading
Structure a short data story around one message and one recommended action, and present it in three slides.