Data Visualization Using Python

From network graphs and NLP to Streamlit dashboards and enterprise-grade Dash applications — the visualization skills that turn raw data into decisions that stick.

What This Course Is?

This course takes you beyond bar charts. You will learn to map relationships between entities using network graphs, extract structure from unstructured text using natural language processing, build interactive dashboards with Streamlit that deploy in minutes, and then step up to production-grade Dash applications built for enterprise scale.

You have learned to load, clean, join, and analyse data in Python. Now comes the part that gets you hired and gets your work acted on: making the data visible. Charts are not decoration. They are the language executives speak. A finding buried in a DataFrame changes nothing; the same finding rendered as a clear, compelling visual changes decisions.

Three modules. Nineteen lessons. One portfolio deliverable per module. By the end, you will have three professional pieces of work: a network visualization project, a deployed Streamlit dashboard, and a Dash application built to enterprise specification.

⚠ Prerequisite: This course assumes you have completed Python for Data Analytics. You should be comfortable loading and wrangling DataFrames with pandas, running notebooks in Google Colab or Jupyter, and using the standard Lumen folder structure. If you are not, complete Module 4 first.

What You Will Build Across All Three Modules

📊 Technical Skills

NetworkX, NLTK, spaCy, Plotly, Streamlit, Dash, Folium, Matplotlib, Seaborn — the full visualization stack.

📈 Business Acumen

Choosing the right chart for the right question. Knowing when to prototype fast and when to build for production. Designing for non-technical audiences.

🤖 AI Literacy

Using Gemini to accelerate layout decisions, debug visualization code, and generate stakeholder narrative from chart data.

🌟 Personal Branding

Three portfolio-ready deliverables. GitHub-published. LinkedIn-shareable. Employer-visible.


1

Module 1: Network Visualizations and Natural Language Processing with Python

🕑 8 Lessons  ·  ~24 hours  ·  Deliverable: Network visualization project (freelance brief)

Language is data. Every customer review, every social media post, every clinical note is a dataset waiting to be mapped. In Module 1, you learn to work as a freelance data analyst — setting up a professional workspace, scraping web data, mining text for meaning, and rendering relationships as network graphs that make hidden structure visible.

The context is realistic: you have been engaged by a client. You scope the work, set up the environment, acquire the data, and deliver a visualization. This is what independent analytical work looks like.

L1

Intro to Freelance and Python Tools

What working as an independent data analyst looks like. The Python tools you need for this module and why. Setting expectations before writing a line of code.

L2

Setting Up the Python Workspace

Physical and virtual workspace for freelance work. Folder structures, Google Drive organisation, project conventions that keep your work reproducible and shareable.

L3

Virtual Environments in Python

Why dependency isolation matters. Creating and managing virtual environments. Package management that doesn't break your project six months later.

L4

Accessing Web Data with Data Scraping

When the data you need isn't in a CSV. Using requests and BeautifulSoup to acquire structured data from the web responsibly and legally.

L5

Text Mining

Tokenising, cleaning, and counting text at scale. Frequency analysis, stopword removal, and term extraction — turning unstructured language into structured data.

L6

Intro to NLP and Network Analysis

Named entity recognition, sentiment, and co-occurrence. Representing relationships as a graph: nodes, edges, weights. The conceptual foundation before you build anything.

L7

Creating Network Visualizations

Building and rendering graphs with NetworkX and Pyvis. Layout algorithms, node sizing, edge weights, and colouring by community — making the invisible visible.

L8

Portfolio and Branding

Packaging the Module 1 project for employers. Publishing to GitHub. Writing about your work on LinkedIn without sounding like you're advertising yourself.

📄 Module 1 Deliverable

A complete freelance analyst project: scraped and cleaned text dataset, NLP pipeline, and an interactive network visualization published to GitHub. One clean, annotated Colab notebook. One LinkedIn post describing what you found and why it matters.


2

Module 2: Dashboards with Python — Streamlit

🕑 8 Lessons  ·  ~24 hours  ·  Deliverable: Deployed interactive Streamlit dashboard

A chart answers a question. A dashboard answers every question a stakeholder might walk in with. In Module 2, you learn to design and build fully interactive dashboards using Streamlit — Python's fastest route from analysis to deployed, shareable web application. No front-end knowledge required. A live URL to show employers and clients within hours, not weeks.

You will source data via an API, apply the full Python visualization library stack, and build a dashboard that anyone can use without opening a notebook. The final lesson covers the skill that separates junior from senior analysts: knowing how to present your work to a room that did not build it.

L1

Tools for Creating Dashboards

The Python dashboard landscape: Streamlit, Dash, Panel, Voilà. When to use each. Why we build with Streamlit in this module — and when Dash is the right answer instead (covered in Module 3).

L2

Project Planning and Sourcing Data with an API

Scoping a dashboard project before writing code. Using a REST API to source and refresh data. Authentication, pagination, and handling API responses with pandas.

L3

Fundamentals of Visualization Libraries — Part 1

Matplotlib and Seaborn in depth. Anatomy of a figure, styling conventions, when static charts are the right choice and when they aren't.

L4

Fundamentals of Visualization Libraries — Part 2

Plotly Express and Plotly Graph Objects. Interactive charts, hover data, animations, and subplots — the building blocks of every dashboard.

L5

Advanced Geospatial Plotting

Choropleth maps, point maps, and route visualizations using Folium and Plotly. Working with GeoJSON. When a map is the only chart that works.

L6

Building Dashboards with Streamlit

Building a multi-chart Streamlit application from scratch. Widgets, layout, session state, and live filtering. Connecting your charts to real data with dropdowns and sliders.

L7

Refining and Deploying a Streamlit Dashboard

The gap between a working dashboard and a presentation-ready one. Colour, labelling, annotation, caching for performance, and one-click deployment to Streamlit Community Cloud.

L8

Portfolio and Branding

Your live dashboard URL is your business card. Writing a case study that describes the problem, the data, the methodology, and the insight — not the tools.

📄 Module 2 Deliverable

A fully interactive Streamlit dashboard, deployed and publicly accessible via Streamlit Community Cloud. API-sourced dataset. At least one geospatial visualization. Annotated Colab notebooks documenting the build. One case-study LinkedIn post written for a business, not a technical, audience.


3

Module 3: Enterprise Dashboards with Dash

🕑 3 Lessons  ·  ~9 hours  ·  Deliverable: Production-grade Dash application

Streamlit gets your dashboard in front of stakeholders fast. But some projects demand more: precise layout control, complex interactivity, enterprise authentication, and a codebase that a team of engineers can maintain at scale. That is where Dash earns its place.

Module 3 is built for analysts who want to move beyond prototyping into production. You already have a working Streamlit dashboard. Now you learn to rebuild it in Dash — understanding exactly what you gain, what it costs, and when the upgrade is worth it. This is the module that bridges the gap between data analyst and data engineer.

L1

From Streamlit to Dash — Why the Upgrade Matters

A direct comparison of the two frameworks at the architecture level. When Streamlit's script model hits its limits. The callback model explained without the jargon. Scoping a Dash project from a Streamlit baseline.

L2

Dash Layout, Callbacks, and Interactivity

Building a multi-component Dash application. app.layout, @app.callback, Input/Output chaining. Creating the precise, responsive interactivity that enterprise stakeholders expect.

L3

Deploying and Presenting a Dash Dashboard

Deployment options for Dash: Render, Railway, and self-hosted. Structuring a Dash app for a team codebase. Presenting the finished application to a non-technical audience — live and under pressure.

📄 Module 3 Deliverable

A production-grade Dash application rebuilt from your Module 2 Streamlit baseline. Deployed and publicly accessible. Annotated code structured for team readability. A written comparison — one page — explaining the trade-offs between the two implementations and when you would recommend each to a client.

📚 Note: Module 3 can be taken as a standalone upgrade by analysts who already know Streamlit. No prior completion of Modules 1 or 2 required — only comfort with Python, pandas, and Plotly.


Tools and Libraries You Will Use

Every library below is introduced in context — tied to a specific analytical task, not taught in isolation. You will know what each tool does and, crucially, when to reach for it.

Library Purpose Module
requests / BeautifulSoup Web scraping and HTTP requests Module 1
NLTK / spaCy Text mining, NLP, named entity recognition Module 1
NetworkX / Pyvis Graph construction and interactive network visualization Module 1
Matplotlib / Seaborn Static charts, statistical plots, publication-quality figures Module 2
Plotly Interactive charts, subplots, animations, geographic plots Modules 2 & 3
Streamlit Rapid dashboard prototyping, deployment, and sharing Module 2
Folium Interactive geospatial maps (Leaflet-based) Module 2
Dash Enterprise dashboard framework with callbacks and full layout control Module 3
Google Colab + Gemini Execution environment and AI copilot throughout All modules

🤖 Gemini Copilot — Throughout All Three Modules

Gemini is threaded into every lesson as an analytical accelerator, not a shortcut. You will use it to debug visualization code, suggest layout improvements, generate first-draft stakeholder narratives from chart data, and critically evaluate AI output against your own domain knowledge. The goal is not to have Gemini do the work. The goal is to move faster without losing judgment.


Who This Course Is For

Analytics professionals

Who want to move beyond Excel charts and static PowerPoint slides to dynamic, self-service visualizations.

Career changers

Who need portfolio pieces that demonstrate Python visualization skills at a professional level — not tutorial screenshots.

Freelance analysts

Who want to add network analysis and interactive dashboards to their client offer — services that command premium rates.

Module 4 graduates

Ready to extend their Python foundation into the part of the analyst stack that is most visible to stakeholders and hiring managers.

What You Leave With

  • A network visualization project built under a freelance brief — GitHub-published, portfolio-ready
  • A deployed Streamlit dashboard with a live public URL — shareable in a job application or client proposal today
  • A production-grade Dash application demonstrating enterprise-level Python dashboard skills
  • Hands-on experience with nine Python libraries across the full visualization stack
  • The ability to work with web-scraped data, API data, and geospatial data — not just CSV files
  • Three portfolio deliverables and the LinkedIn presence to make sure the right people see them
Contact

Talk to us

Have questions? We’re here to help! Whether you’re curious to learn more, want guidance on applying, or need insights to make the right decision—reach out today and take the first step toward transforming your career.