Skip to content
geeksforgeeks
  • Tutorials
    • Python
    • Java
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
    • Practice Coding Problems
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Data preprocessing
  • Data Manipulation
  • Data Analysis using Pandas
  • EDA
  • Pandas Exercise
  • Pandas AI
  • Numpy
  • Matplotlib
  • Plotly
  • Data Analysis
  • Machine Learning
  • Data science
Open In App
Next Article:
Seaborn Kdeplot – A Comprehensive Guide
Next article icon

Data visualization with Seaborn Pairplot

Last Updated : 11 Jun, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

Data Visualization is the presentation of data in pictorial format. It is extremely important for Data Analysis, primarily because of the fantastic ecosystem of data-centric Python packages. Seaborn is one of those packages that can make analyzing data much easier.

data-visual-copy
Data visualization with Seaborn Pairplot

In this article, we will use Pairplot Seaborn to analyze data and, using the sns.pairplot() function.

Table of Content

  • PairPlot Seaborn : Implementation
    • 1. Pairplot Seaborn: Plotting Selected Variables
    • 2. Pairplot Seaborn: Adding a Hue Color to a Seaborn Pairplot
    • 3. Pairplot Seaborn: Modifying Color Palette
    • 4. Pairplot Seaborn: Diagonal Kind of plots
    • 5. Pairplot Seaborn:Adjusting Plot Kind
    • 6. Pairplot Seaborn:Controlling the Markers
    • 7. Pairplot Seaborn:Limiting the Variables
  • Advanced Customization With Seaborn Pairplot

Pairplot in Seaborn is a data visualization tool that creates a matrix of scatterplots, showing pairwise relationships between variables in a dataset, aiding in visualizing correlations and distributions.

PairPlot Seaborn : Implementation

To implement a Pair Plot using Seaborn, you can follow these steps:

To plot multiple pairwise bivariate distributions in a dataset, you can use the pairplot() function. This shows the relationship for (n, 2) combination of variable in a DataFrame as a matrix of plots and the diagonal plots are the univariate plots.

Syntax: seaborn.pairplot( data, \*\*kwargs )

Parameter:

data: Tidy (long-form) dataframe where each column is a variable and  each row is an observation.

hue: Variable in “data“ to map plot aspects to different colors.

palette: dict or seaborn color palette

{x, y}_vars: lists of variable names, optional

dropna: boolean, optional

First of all, We see Upload seaborn librarry 'tips' using pandas. Then, we will visualize data with seaborn.

Python
# importing packages  import seaborn  import matplotlib.pyplot as plt  # loading dataset using seaborn  df = seaborn.load_dataset('tips') df.head()  

Output:

   total_bill   tip     sex smoker  day    time  size 0       16.99  1.01  Female     No  Sun  Dinner     2 1       10.34  1.66    Male     No  Sun  Dinner     3 2       21.01  3.50    Male     No  Sun  Dinner     3 3       23.68  3.31    Male     No  Sun  Dinner     2 4       24.59  3.61  Female     No  Sun  Dinner     4

Let's plot pairplot using seaborn:

We will simply plot a pairplot with tips data frame.

Python
seaborn.pairplot(df) plt.show()  

Output:

pair1
seaborn pairplot

Each combination of variables is represented by a scatter plot, and the diagonal plots show the distribution of each individual variable.

  • The relationship between total_bill and tip is stronger for larger parties. 
  • There is a positive correlation between tip and size. 
  • The relationship between tip and size is stronger for larger total bill amounts.
  • There is a weak positive correlation between total_bill and size. This means that larger parties tend to have larger bills, but the relationship is not very strong.
  • There is no clear relationship between sex and tip or total_bill.
  • There is a weak positive correlation between day and total_bill. This means that bills tend to be slightly larger on Saturdays and Fridays than on other days of the week.
  • There is no clear relationship between time and tip or total_bill.
  • There is a weak positive correlation between smoker and tip. This means that smokers tend to tip slightly more than non-smokers.

1. Pairplot Seaborn: Plotting Selected Variables

Python
import seaborn as sns import matplotlib.pyplot as plt  df = sns.load_dataset('tips') selected_vars = ['total_bill', 'tip'] sns.pairplot(df, vars=selected_vars) plt.show() 

Output:

pairplot1
paiplot seaborn

The plots on the diagonal show the distribution of each individual variable. For example, the top left plot shows the distribution of total bills, and the bottom right plot shows the distribution of tips.

The off-diagonal plots show the relationship between two variables. For example, the top right plot shows the relationship between total bill and tip. There is a positive correlation between these two variables, which means that larger bills tend to have larger tips.

2. Pairplot Seaborn: Adding a Hue Color to a Seaborn Pairplot

Python
import seaborn  import matplotlib.pyplot as plt  df = seaborn.load_dataset('tips') seaborn.pairplot(df,hue ='size')  plt.show()  

Output:

pair
pairplot seabon

The points in this scatter plot are colored by the value of size, so you can see how the relationship between total_bill and tip varies depending on the size of the party.

  • There is a positive correlation between total_bill and tip. This means that, in general, larger bills tend to have larger tips.
  • There is a positive correlation between tip and size. This means that, in general, larger parties tend to have larger tips.
  • The relationship between tip and size is stronger for larger total bill amounts.

3. Pairplot Seaborn: Modifying Color Palette

Python
import seaborn as sns import matplotlib.pyplot as plt  df = sns.load_dataset('tips') sns.pairplot(df, hue="size", palette="husl") plt.show 

Output:

volor

4. Pairplot Seaborn: Diagonal Kind of plots

In Seaborn's Pairplot, the 'diag_kind' parameter specifies the type of plot to display along the diagonal axis, representing the univariate distribution of each variable. Options include 'hist' for histograms, 'kde' for kernel density estimates, and 'scatter' for scatterplots. Choose based on the nature of the data and analysis goals. Here, let's plot with kernel density estimates.

Python
import seaborn as sns import matplotlib.pyplot as plt  df = sns.load_dataset('tips') sns.pairplot(df,diag_kind = 'kde') plt.show 

Output:

plots

5. Pairplot Seaborn:Adjusting Plot Kind

The kind parameter allows to change the type of plot used for the off-diagonal plots. You can choose any like scatter, kde, or reg (regression).

Python
sns.pairplot(df, kind='reg') plt.show() 

Output:

download-(41)
Adjusting Plot Kind

6. Pairplot Seaborn:Controlling the Markers

The markers parameter allows you to specify different markers for different categories.

Python
sns.pairplot(df, hue='sex', markers=["o", "s"]) plt.show() 

Output:

download-(42)
Controlling the Markers

7. Pairplot Seaborn:Limiting the Variables

If you are interested in only a subset of the variables, you can specify them using the vars parameter.

Python
sns.pairplot(df, hue='sex', vars=['total_bill', 'tip', 'size']) plt.show() 

Output:

download-(43)
Pairplot Seaborn:Limiting the Variables

Advanced Customization With Seaborn Pairplot

For advanced customization, you can access the underlying FacetGrid object and modify it further.

Python
g = sns.pairplot(df, hue='day') g.fig.suptitle("Pairplot of Tips Dataset", y=1.02)  # Add a title g.set(xticks=[], yticks=[])  # Remove tick labels plt.show() 

Output:

download-(44)
Advanced Customization With Seaborn Pairplot

Conclusion

Pairplot in Seaborn is a powerful tool for visualizing relationships, patterns, and distributions in multivariate datasets. It simplifies data analysis by creating a matrix of scatterplots, providing insights into both univariate distributions and bivariate relationships. The customization options, such enhance its flexibility.


Next Article
Seaborn Kdeplot – A Comprehensive Guide

K

kumar_satyam
Improve
Article Tags :
  • Data Science
  • Data Visualization
  • AI-ML-DS
  • Python-pandas
  • Python-Seaborn
  • AI-ML-DS With Python
  • Python Data Visualization

Similar Reads

    Introduction

    Python Seaborn Tutorial
    Seaborn is a library mostly used for statistical plotting in Python. It is built on top of Matplotlib and provides beautiful default styles and color palettes to make statistical plots more attractive.In this tutorial, we will learn about Python Seaborn from basics to advance using a huge dataset of
    15+ min read
    Introduction to Seaborn - Python
    Prerequisite - Matplotlib Library Visualization is an important part of storytelling, we can gain a lot of information from data by simply just plotting the features of data. Python provides a numerous number of libraries for data visualization, we have already seen the Matplotlib library in this ar
    5 min read
    Plotting graph using Seaborn | Python
    This article will introduce you to graphing in Python with Seaborn, which is the most popular statistical visualization library in Python. Installation: The easiest way to install seaborn is to use pip. Type following command in terminal:   pip install seaborn OR, you can download it from here and i
    7 min read

    Styling Plots

    Seaborn | Style And Color
    Seaborn is a statistical plotting library in python. It has beautiful default styles. This article deals with the ways of styling the different kinds of plots in seaborn.  Seaborn Figure Styles This affects things like the color of the axes, whether a grid is enabled by default, and other aesthetic
    4 min read
    Seaborn - Color Palette
    In this article, We are going to see seaborn color_palette(), which can be used for coloring the plot. Using the palette we can generate the point with different colors. Example:Pythonimport seaborn as sns import matplotlib.pyplot as plt # Set a Seaborn color palette sns.set_palette("Set2") # Create
    3 min read

    Multiple Plots

    Python - seaborn.FacetGrid() method
    Prerequisite: Seaborn Programming Basics Seaborn is a Python data visualization library based on matplotlib. It provides a high-level interface for drawing attractive and informative statistical graphics. Seaborn helps resolve the two major problems faced by Matplotlib; the problems are ? Default Ma
    3 min read
    Python - seaborn.PairGrid() method
    Prerequisite: Seaborn Programming Basics Seaborn is a Python data visualization library based on matplotlib. It provides a high-level interface for drawing attractive and informative statistical graphics. Seaborn helps resolve the two major problems faced by Matplotlib; the problems are ? Default Ma
    3 min read

    Scatter Plot

    Scatterplot using Seaborn in Python
    Seaborn is an amazing visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make statistical plots more attractive. It is built on the top of matplotlib library and also closely integrated into the data structures from pandas.Wh
    4 min read
    Visualizing Relationship between variables with scatter plots in Seaborn
    To understand how variables in a dataset are related to one another and how that relationship is dependent on other variables, we perform statistical analysis. This Statistical analysis helps to visualize the trends and identify various patterns in the dataset. One of the functions which can be used
    2 min read
    How To Make Scatter Plot with Regression Line using Seaborn in Python?
    In this article, we will learn how to male scatter plots with regression lines using Seaborn in Python. Let's discuss some concepts : Seaborn : Seaborn is a tremendous visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make s
    2 min read
    Scatter Plot with Marginal Histograms in Python with Seaborn
    Prerequisites: Seaborn  Scatter Plot with Marginal Histograms is basically a joint distribution plot with the marginal distributions of the two variables. In data visualization, we often plot the joint behavior of two random variables (bi-variate distribution) or any number of random variables. But
    2 min read

    Line Plot

    Data Visualization with Seaborn Line Plot
    Prerequisite: SeabornMatplotlib  Presenting data graphically to emit some information is known as data visualization. It basically is an image to help a person interpret what the data represents and study it and its nature in detail. Dealing with large scale data row-wise is an extremely tedious tas
    4 min read
    Creating A Time Series Plot With Seaborn And Pandas
    In this article, we will learn how to create A Time Series Plot With Seaborn And Pandas. Let's discuss some concepts : Pandas is an open-source library that's built on top of NumPy library. It's a Python package that gives various data structures and operations for manipulating numerical data and st
    4 min read
    How to Make a Time Series Plot with Rolling Average in Python?
    Time Series Plot is used to observe various trends in the dataset over a period of time. In such problems, the data is ordered by time and can fluctuate by the unit of time considered in the dataset (day, month, seconds, hours, etc.). When plotting the time series data, these fluctuations may preven
    4 min read

    Bar Plot

    Barplot using seaborn in Python
    Seaborn is an amazing visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make statistical plots more attractive. It is built on the top of matplotlib library and also closely integrated to the data structures from pandas.  Se
    6 min read
    Seaborn - Sort Bars in Barplot
    Prerequisite: Seaborn, Barplot In this article, we are going to see how to sort the bar in barplot using Seaborn in python. Seaborn is an amazing visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make statistical plots more
    3 min read

    Count Plot

    seaborn.countplot() in Python
    seaborn.countplot() is a function in the Seaborn library in Python used to display the counts of observations in categorical data. It shows the distribution of a single categorical variable or the relationship between two categorical variables by creating a bar plot. Example:Pythonimport seaborn as
    8 min read

    Box Plot

    Boxplot using Seaborn in Python
    Boxplot is used to see the distribution of numerical data and identify key stats like minimum and maximum values, median, identifying outliers, understanding how data is distributed and can compare the distribution of data across different categories or variables. In Seaborn the seaborn.boxplot() fu
    3 min read
    Horizontal Boxplots with Seaborn in Python
    Prerequisite: seaborn The Boxplots are used to visualize the distribution of data which is useful when a comparison of data is required. Sometimes, Boxplot is also known as a box-and-whisker plot. The box shows the quartiles of dataset and whiskers extend to show rest of the distribution. In this ar
    1 min read
    Seaborn - Coloring Boxplots with Palettes
    Adding the right set of color with your data visualization makes it more impressive and readable, seaborn color palettes make it easy to use colors with your visualization. In this article, we will see how to color boxplot with seaborn color palettes also learn the uses of seaborn color palettes and
    2 min read
    How to Show Mean on Boxplot using Seaborn in Python?
    A boxplot is a powerful data visualization tool used to understand the distribution of data. It splits the data into quartiles, and summarises it based on five numbers derived from these quartiles: median: the middle value of data. marked as Q2, portrays the 50th percentile.first quartile: the middl
    2 min read
    How To Manually Order Boxplot in Seaborn?
    Seaborn is an amazing visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make statistical plots more attractive. It is built on the top of matplotlib library and also closely integrated into the data structures from pandas.Se
    3 min read
    Grouped Boxplots in Python with Seaborn
    Boxplot depicts the distribution of quantitative data facilitating comparisons between different variables, continuous or categorical. It is a common data dispersion measure. Boxplots consist of a five-number summary which helps in detecting and removing outliers from the dataset. Minimum observatio
    2 min read
    Box plot visualization with Pandas and Seaborn
    Box Plot is the visual representation of the depicting groups of numerical data through their quartiles. Boxplot is also used for detect the outlier in data set. It captures the summary of the data efficiently with a simple box and whiskers and allows us to compare easily across groups. Boxplot summ
    3 min read

    Violin Plot

    Violinplot using Seaborn in Python
    Seaborn is an amazing visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make statistical plots more attractive. It is built on the top of matplotlib library and also closely integrated into the data structures from pandas. V
    6 min read
    How to Make Horizontal Violin Plot with Seaborn in Python?
    In this article, we are going to plot a horizontal Violin plot with seaborn. We can use two methods for the Drawing horizontal Violin plot, Violinplot() and catplot(). Method 1: Using violinplot() A violin plot plays a similar activity that is pursued through whisker or box plot do. As it shows seve
    3 min read
    How to Make Grouped Violinplot with Seaborn in Python?
    This article depicts how to make a grouped violinplot with Seaborn in python. Violinplot is a great way of visualizing the data as a combination of the box plot with the kernel density plots to produce a new type of plot.  For this article, we will be using the iris dataset to plot data. This comes
    3 min read

    Strip Plot

    Stripplot using Seaborn in Python
    Seaborn is an amazing visualization library for statistical graphics plotting in Python. It provides beautiful default styles and color palettes to make statistical plots more attractive. It is built on top of the matplotlib library and also closely integrated into the data structures from pandas. S
    5 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences