Skip to content

Seaborn Learning Path

Learn everything you need to know about the popular data visualization library.

Seaborn is a Python data visualization library used for making statistical graphs. While the library can make any number of graphs, it specializes in making complex statistical graphs beautiful and simple.

The library is meant to help you explore and understand your data. Because data in Python often comes in the form of a Pandas DataFrame, Seaborn integrates nicely with Pandas. The library even handles many statistical aggregations for you in a simple, plain-English way.

Seaborn is built on top of Matplotlib. Because of this, you gain access to the entire functionality and customizability of Matplotlib. However, it provides high-level functions to help you easily produce consistently attractive visualizations.

An Overview

What you’ll learn in this guide

Everything you need to know

Introduction to Seaborn

Relational Plots

Categorical Plots

Distribution Plots

Multi-Plot Grids

Regression Plots

Customizing Seaborn

Getting Started with Seaborn

Introduction to Seaborn

Get a solid overview of the library. Learn how to install Seaborn and deal with problems that come from importing the library.

Exploring the first chart type

Relational Plots in Seaborn

Understand all of the relational plotting functions Seaborn has to offer. Learn how to build informative visualizations and how to customize them to your heart’s content.

Seaborn relplot()

Learn how to create figure-level plots that allow you to create all kinds of relational plots, including scatterplots and lineplots.

Seaborn scatterplot()

Create meaningful scatterplots that help explore the relationship between two variables, including how to add color, change sizes and shapes.

Seaborn lineplot()

Create helpful lineplots that show the relationship between one variable and a continuous variable, including how to add color and customize aggregation measures.

Exploring your categorical data

Categorical Plots in Seaborn

Seaborn makes building categorical plots simple but allows you to build in huge statistical insight. Learn how to build beautiful plots and customize them to meet your needs.

Seaborn catplot()

Learn how to create figure-level plots that allow you to create all kinds of categorical plots, including barplots and boxplots.

Seaborn barplot()

Learn how to aggregate categorical data using bars that represent measures such as the mean and customize them using error bars and conditional coloring.

Seaborn boxplot()

Create box and whisker plots that allow you to understand your categorical data by exploring the interquartile range, extreme values, and more.

Seaborn violinplot()

Build on what you learned from boxplots and add more detail around relative distributions using violin plots.

Seaborn stripplot()

Create a scatterplot that adds jitter to the dots so that you can better understand the distribution of different data points along categorical data.

Seaborn swarmplot()

Create bee and swarm plots that can be combined with box and whisker plots to give a sense of the underlying distribution.

Seaborn countplot()

Create bar plots that provide counts of data in their bars, giving readers good insight into the number of observations in each category.

Seaborn pointplot()

Create point plots that provide similar functions as bar plots, but provide more information, such as error bars around a measure of central tendency. 

Exploring your dataset’s distribution

Distribution Plots in Seaborn

Seaborn provides a ton of flexibility in building distribution plots that go well beyond creating histograms. Learn how to explore the way your data are distributed and customize these visualizations.

Seaborn distplot()

Learn how to create figure-level plots that allow you to create all kinds of distribution plots, histograms and KDE plots.

Seaborn histplot()

Create incredible histograms using an easy function that allows you to add significant amounts of detail.

Seaborn kdeplot()

Build kernel density estimate plots that smooth out the underlying estimated function of your distribution.

Seaborn rugplot()

Add marginal distributions to your plots and learn how to add them to other graphs to gain even more insight.

Seaborn ecdfplot()

Learn how to build empirical cumulative distribution functions that illustrate how data are cumulatively distributed.

Create plots with more than one plot

Creating Multi-Plot Grids

Seaborn makes plotting multiple charts simple and intuitive. Learn how to master the Seaborn FacetGrid object.

Seaborn FacetGrid

Building beautiful multi-grid plots that allow you to build small-multiples of charts or combine different chart types into one.

Seaborn pairplot()

Learn how to plot pairwise relationships in a dataset so that each variable in a dataset will be plotted against each other variable in the dataset.

Determining Regression

Regression Plots in Seaborn

Seaborn provides a ton of functionality in calculating regression and finding errors

Make your plots exactly what you want

Customizing Seaborn Plots

Being built on Matplotlib, Seaborn provides a huge amount of flexibility. Being able to modify colors, titles, and labels is simple with Seaborn.

Customizing Seaborn Legends

Learn how to customize Seaborn legends, including changing how they appear and even move them outside of your plot.

Seaborn despine()

Seaborn makes removing spines (the borders of your visualization) simple and intuitive, using this dedicate function.