seaborn: statistical data visualization

Seaborn is a Python visualization library based on matplotlib. It provides a high-level interface for drawing attractive statistical graphics.


Online documentation is available at

The docs include a tutorial, example gallery, API reference, and other useful information.

To build the documentation locally, please refer to doc/


Seaborn supports Python 3.7+ and no longer supports Python 2.

Installation requires numpy, pandas, and matplotlib. Some functions will optionally use scipy and/or statsmodels if they are available.


The latest stable release (and required dependencies) can be installed from PyPI:

pip install seaborn

It is also possible to include the optional dependencies:

pip install seaborn[all]

You may instead want to use the development version from Github:

pip install git+

Seaborn is also available from Anaconda and can be installed with conda:

conda install seaborn

Note that the main anaconda repository typically lags PyPI in adding new releases.


Testing seaborn requires installing additional packages listed in ci/utils.txt.

To test the code, run make test in the source directory. This will exercise both the unit tests and docstring examples (using pytest) and generate a coverate report.

The doctests require a network connection (unless all example datasets are cached), but the unit tests can be run offline with make unittests.

Code style is enforced with flake8 using the settings in the setup.cfg file. Run make lint to check.


Seaborn development takes place on Github:

Please submit bugs that you encounter to the issue tracker with a reproducible example demonstrating the problem. Questions about usage are more at home on StackOverflow, where there is a seaborn tag.