Skip to content

🎨 SeabornMasterPro is a comprehensive, modular project to master Seaborn for data visualization. Includes themed utilities, advanced plotting notebooks, dashboards, time series, Streamlit app, and Docker support β€” perfect for learners, analysts, and open-source enthusiasts.

License

Notifications You must be signed in to change notification settings

SatvikPraveen/SeabornMasterPro

Repository files navigation

🎨 SeabornMasterPro

License: GPL v3 Python Jupyter Notebooks Seaborn Mastery Docker Ready Streamlit App PRs Welcome Last Commit


πŸ“Œ Overview

SeabornMasterPro is an open-source, end-to-end visualization mastery project built to help you learn, recall, and reuse Seaborn effectively β€” from plotting basics to dashboard-level visual storytelling.

🎯 Ideal for:

  • Learners who want structured notebooks and projects
  • Practitioners who want reusable utilities and themes
  • Professionals who need dashboards, cheatsheets, and reproducible setups

πŸ“½οΈ Project Preview

Here’s a glimpse into the Seaborn visualizations and dashboards created in this project:

🧭 Streamlit EDA Dashboard

Powered by streamlit_app.py, this dashboard provides real-time interaction with synthetic datasets.

Streamlit Dashboard Preview


πŸ“Š Real-World Visual Storytelling

Plots generated using notebooks/05_realworld_EDA.ipynb and reusable functions from plot_utils.py.

E-Commerce EDA Preview


🧠 Learning Outcomes

By working through this project, you'll be able to:

  • πŸ“Š Visualize structured data with Seaborn’s full plotting suite
  • 🧱 Build custom dashboards using Streamlit and save visual reports
  • ♻️ Reuse plot components using plot_utils.py
  • πŸ“¦ Package everything in a container-ready environment

🧱 Project Structure

SeabornMasterPro/
β”œβ”€β”€ notebooks/               # Modular notebooks (merged logically)
β”‚   β”œβ”€β”€ 01_setup_and_basics.ipynb
β”‚   β”œβ”€β”€ 02_distributions_relationships.ipynb
β”‚   β”œβ”€β”€ 03_categorical_matrixplots.ipynb
β”‚   β”œβ”€β”€ 04_multi_custom_dashboards.ipynb
β”‚   β”œβ”€β”€ 05_realworld_EDA.ipynb
β”‚   └── 06_timeseries_lineplots.ipynb
β”œβ”€β”€ utils/                   # Reusable helper functions
β”‚   └── plot_utils.py        # Theme, save_fig, annotate, format_date_axis, etc.
β”œβ”€β”€ scripts/                 # Dataset generators and helpers
β”‚   └── generate_datasets.py
β”œβ”€β”€ datasets/                # Synthetic datasets (auto-generated)
β”‚   β”œβ”€β”€ ecommerce_data.csv
β”‚   β”œβ”€β”€ employee_data.csv
β”‚   β”œβ”€β”€ marketing_campaign.csv
β”‚   β”œβ”€β”€ sales_data.csv
β”‚   β”œβ”€β”€ student_scores.csv
β”‚   └── web_traffic.csv
β”œβ”€β”€ exports/                 # Saved visuals & reports
β”‚   β”œβ”€β”€ 01_basics/
β”‚   β”œβ”€β”€ 02_distributions/
β”‚   β”œβ”€β”€ 03_categorical/
β”‚   β”œβ”€β”€ 04_dashboards/
β”‚   β”œβ”€β”€ 05_realworld/
β”‚   └── 06_timeseries/
β”œβ”€β”€ cheatsheets/             # Markdown cheatsheets
β”‚   └── seaborn_cheatsheet.md
β”œβ”€β”€ streamlit_app.py         # Interactive EDA dashboard
β”œβ”€β”€ requirements.txt         # Minimal dependencies to run the project
β”œβ”€β”€ requirements_dev.txt     # Full dev environment
β”œβ”€β”€ Dockerfile               # Container setup
β”œβ”€β”€ .dockerignore
β”œβ”€β”€ .gitignore
β”œβ”€β”€ README.md
└── LICENSE

🌟 Features

  • πŸ“˜ Modular notebooks for each topic
  • πŸ“Š Full Seaborn coverage: histplot, kdeplot, scatterplot, heatmap, pairplot, catplot, FacetGrid, and more
  • 🎨 Unified visual style via plot_utils.py
  • πŸ“ Exports saved with save_fig() into logical folders
  • πŸ—‚οΈ Cheatsheet in Markdown for quick revision
  • 🌐 Streamlit dashboard to explore visualizations interactively
  • 🐳 Docker support for full reproducibility

βœ… Mastery Checklist

  • Setup environment and install dependencies
  • Master Seaborn basics, distributions, relationships
  • Learn categorical & matrix visualizations
  • Build dashboards and multi-panel plots
  • Analyze real-world synthetic datasets
  • Use .pipe() and plot_utils.py for reusability
  • Run everything inside Docker or via Streamlit

πŸ”§ Setup Instructions

▢️ Install Requirements

pip install -r requirements.txt

Or using Conda:

conda create -n seabornpro python=3.10
conda activate seabornpro
pip install -r requirements.txt

🐳 Run in Docker (JupyterLab)

docker build -t seaborn-masterpro .
docker run -p 8890:8888 -p 8501:8501 -v $(pwd):/app -d seaborn-masterpro

You can now open JupyterLab in your browser at: πŸ”— http://localhost:8890

The container disables Jupyter token/password prompts for local ease.


πŸ“Š Launch Streamlit Dashboard

streamlit run streamlit_app.py

Then visit: πŸ”— http://localhost:8501


πŸ” Extend This Repo

Want to take this further?

  • Add Plotly/Altair interactive options
  • Create animated visualizations
  • Add unit tests for plot_utils.py
  • Create seaborn_themes.py presets
  • Integrate other dashboards into Streamlit

🧠 Learn by Doing

Each notebook is carefully structured with:

  • βœ… Concepts grouped by theme
  • βœ… Code + plots + comments inline
  • βœ… Modular reusability via plot_utils.py
  • βœ… Dataset links and exports
  • βœ… Time-based, categorical, and real-world examples

πŸ“Œ Topics Covered

  • Setup and Seaborn basics
  • Distributions and pairwise relationships
  • Categorical plots and matrix visualizations
  • Multi-panel layouts and custom dashboards
  • Real-world EDA with Titanic & Marketing Campaign
  • Time series line plots with date formatting

🎯 Who Is This For?

Level Use Case
βœ… Beginner Learn Seaborn from scratch
βœ… Intermediate Build reusable pipelines
βœ… Advanced Automate dashboards with Docker

πŸ”— Related Projects


πŸ“„ License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for more details.


πŸ™Œ Acknowledgements


✨ Author

Made with πŸ’™ by Satvik Praveen


About

🎨 SeabornMasterPro is a comprehensive, modular project to master Seaborn for data visualization. Includes themed utilities, advanced plotting notebooks, dashboards, time series, Streamlit app, and Docker support β€” perfect for learners, analysts, and open-source enthusiasts.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages