Cheat Sheet Seaborn Reference Guide
User Manual:
Open the PDF directly: View PDF .
Page Count: 1
Python For Data Science Cheat Sheet
Seaborn
Learn Data Science Interactively at www.DataCamp.com
Statistical Data Visualization With Seaborn
DataCamp
Learn Python for Data Science Interactively
Figure Aesthetics
Data
The Python visualization library Seaborn is based on
matplotlib and provides a high-level interface for drawing
aractive statistical graphics.
Make use of the following aliases to import the libraries:
The basic steps to creating plots with Seaborn are:
1. Prepare some data
2. Control figure aesthetics
3. Plot with Seaborn
4. Further customize your plot
>>> import pandas as pd
>>> import numpy as np
>>> uniform_data = np.random.rand(10, 12)
>>> data = pd.DataFrame({'x':np.arange(1,101),
'y':np.random.normal(0,4,100)})
>>> import matplotlib.pyplot as plt
>>> import seaborn as sns
Ploing With Seaborn
>>> import matplotlib.pyplot as plt
>>> import seaborn as sns
>>> tips = sns.load_dataset("tips")
>>> sns.set_style("whitegrid")
>>> g = sns.lmplot(x="tip",
y="total_bill",
data=tips,
aspect=2)
>>> g = (g.set_axis_labels("Tip","Total bill(USD)").
set(xlim=(0,10),ylim=(0,100)))
>>> plt.title("title")
>>> plt.show(g)
Step 4
Step 2
Step 1
Step 5
Step 3
1
>>> titanic = sns.load_dataset("titanic")
>>> iris = sns.load_dataset("iris")
Seaborn also offers built-in data sets:
2
3
Further Customizations
4
Show or Save Plot
>>> sns.set() (Re)set the seaborn default
>>> sns.set_style("whitegrid") Set the matplotlib parameters
>>> sns.set_style("ticks", Set the matplotlib parameters
{"xtick.major.size":8,
"ytick.major.size":8})
>>> sns.axes_style("whitegrid") Return a dict of params or use with
with to temporarily set the style
Axis Grids
>>> f, ax = plt.subplots(gsize=(5,6)) Create a figure and one subplot
>>> plt.title("A Title") Add plot title
>>> plt.ylabel("Survived") Adjust the label of the y-axis
>>> plt.xlabel("Sex") Adjust the label of the x-axis
>>> plt.ylim(0,100) Adjust the limits of the y-axis
>>> plt.xlim(0,10) Adjust the limits of the x-axis
>>> plt.setp(ax,yticks=[0,5]) Adjust a plot property
>>> plt.tight_layout() Adjust subplot params
>>> plt.show() Show the plot
>>> plt.saveg("foo.png") Save the plot as a figure
>>> plt.saveg("foo.png", Save transparent figure
transparent=True)
>>> sns.regplot(x="sepal_width", Plot data and a linear regression
y="sepal_length", model fit
data=iris,
ax=ax)
>>> g.despine(left=True) Remove le spine
>>> g.set_ylabels("Survived") Set the labels of the y-axis
>>> g.set_xticklabels(rotation=45) Set the tick labels for x
>>> g.set_axis_labels("Survived", Set the axis labels
"Sex")
>>> h.set(xlim=(0,5), Set the limit and ticks of the
ylim=(0,5), x-and y-axis
xticks=[0,2.5,5],
yticks=[0,2.5,5])
Close & Clear
>>> plt.cla() Clear an axis
>>> plt.clf() Clear an entire figure
>>> plt.close() Close a window
5
Also see Lists, NumPy & Pandas
Also see Matplotlib
Also see Matplotlib
Also see Matplotlib
Also see Matplotlib
Context Functions
>>> sns.set_context("talk") Set context to "talk"
>>> sns.set_context("notebook", Set context to "notebook",
font_scale=1.5, cale font elements and
rc={"lines.linewidth":2.5}) override param mapping
Seaborn styles
>>> sns.set_palette("husl",3) Define the color palee
>>> sns.color_palette("husl") Use with with to temporarily set palee
>>> atui = ["#9b59b6","#3498db","#95a5a6","#e74c3c","#34495e","#2ecc71"]
>>> sns.set_palette(atui) Set your own color palee
Color Palee
Plot
Axisgrid Objects
>>> g = sns.FacetGrid(titanic, Subplot grid for ploing conditional
col="survived", relationships
row="sex")
>>> g = g.map(plt.hist,"age")
>>> sns.factorplot(x="pclass", Draw a categorical plot onto a
y="survived", Facetgrid
hue="sex",
data=titanic)
>>> sns.lmplot(x="sepal_width", Plot data and regression model fits
y="sepal_length", across a FacetGrid
hue="species",
data=iris)
Regression Plots
Categorical Plots
Scaerplot
>>> sns.stripplot(x="species", Scaerplot with one
y="petal_length", categorical variable
data=iris)
>>> sns.swarmplot(x="species", Categorical scaerplot with
y="petal_length", non-overlapping points
data=iris)
Bar Chart
>>> sns.barplot(x="sex", Show point estimates and
y="survived", confidence intervals with
hue="class", scaerplot glyphs
data=titanic)
Count Plot
>>> sns.countplot(x="deck", Show count of observations
data=titanic,
palette="Greens_d")
Point Plot
>>> sns.pointplot(x="class", Show point estimates and
y="survived", confidence intervals as
hue="sex", rectangular bars
data=titanic,
palette={"male":"g",
"female":"m"},
markers=["^","o"],
linestyles=["-","--"])
Boxplot
>>> sns.boxplot(x="alive", Boxplot
y="age",
hue="adult_male",
data=titanic)
>>> sns.boxplot(data=iris,orient="h") Boxplot with wide-form data
Violinplot
>>> sns.violinplot(x="age", Violin plot
y="sex",
hue="survived",
data=titanic)
>>> plot = sns.distplot(data.y, Plot univariate distribution
kde=False,
color="b")
Distribution Plots
>>> h = sns.PairGrid(iris) Subplot grid for ploing pairwise
>>> h = h.map(plt.scatter) relationships
>>> sns.pairplot(iris) Plot pairwise bivariate distributions
>>> i = sns.JointGrid(x="x", Grid for bivariate plot with marginal
y="y", univariate plots
data=data)
>>> i = i.plot(sns.regplot,
sns.distplot)
>>> sns.jointplot("sepal_length", Plot bivariate distribution
"sepal_width",
data=iris,
kind='kde')
Matrix Plots
>>> sns.heatmap(uniform_data,vmin=0,vmax=1) Heatmap