outlier-plotting

More graceful handling of outliers in plots


License
MIT
Install
pip install outlier-plotting==0.2.0

Documentation

outlier_plotting

More graceful handling of outliers in plots. Currently supports most of seaborn categorical scatter, distributional and estimate plots.

Functionality

handle_outliers remove outliers from the plot and show them as text boxes. It can be used with most seaborn plotting function that works with long-form data as well as kdeplot.

Notable exceptions are:

  • countplot
  • lineplot
  • scatterplot

Please not that only inliers are passed into the plotting function, consequently density estimates and functionals are only computed on that subset and not representative of the whole data.

Example

from outlier_plotting.sns import handle_outliers
import seaborn as sns
from matplotlib import pyplot as plt

plt.title('Showing Outliers')
sns.boxplot(data=df, y = 'type', x='value')
plt.show()

plt.title('With Outlier Handling')
handle_outliers(data=df, y = 'type', x='value', plotter=sns.boxplot)
plt.show()

png

png

For more examples, see examples.ipynb.

Customization

The cutoff at which data points are considered outliers can be set as a multiple of the IQR (c.f. inlier_range). Margin (c.f. margin) and padding (c.f. padding) for the text boxes can be changed as well.

Installation

conda

conda env create -f environment.yml

pip

pip install outlier-plotting