Using FacetGrid, catplot and lmplot

Intermediate Data Visualization with Seaborn

Chris Moffitt

Instructor

Boxplot Facetgrid

Intermediate Data Visualization with Seaborn

Tidy data

  • Seaborn's grid plots require data in "tidy format"
  • One observation per row of data

Tidy data

Intermediate Data Visualization with Seaborn

FacetGrid

  • The FacetGrid is foundational for many data aware grids
  • It allows the user to control how data is distributed across columns, rows and hue
  • Once a FacetGrid is created, the plot type must be mapped to the grid
Intermediate Data Visualization with Seaborn

FacetGrid Categorical Example

g = sns.FacetGrid(df, col='HIGHDEG')
g.map(sns.boxplot, 'Tuition', 
      order=['1', '2', '3', '4'])

Boxplot Grid example

Intermediate Data Visualization with Seaborn

catplot()

  • The catplot is a simpler way to use a FacetGrid for categorical data
  • Combines the facetting and mapping process into 1 function
sns.catplot(x="Tuition", data=df,
            col="HIGHDEG", kind="box")

Boxplot Grid example 2

Intermediate Data Visualization with Seaborn

FacetGrid for regression

  • FacetGrid() can also be used for scatter or regression plots
g = sns.FacetGrid(df, col='HIGHDEG')
g.map(plt.scatter, 'Tuition', 'SAT_AVG_ALL')

Scatter Grid example

Intermediate Data Visualization with Seaborn

lmplot

  • lmplot plots scatter and regression plots on a FacetGrid
sns.lmplot(data=df, x="Tuition", y="SAT_AVG_ALL",
           col="HIGHDEG", fit_reg=False)

Scatter Grid example 2

Intermediate Data Visualization with Seaborn

lmplot with regression

sns.lmplot(data=df, x="Tuition", y="SAT_AVG_ALL",
           col="HIGHDEG", row="REGION")

Regression grid example

Intermediate Data Visualization with Seaborn

Let's practice!

Intermediate Data Visualization with Seaborn

Preparing Video For Download...