# Joy Plots Visualization in Python [Easy Guide]

Filed Under: Python Modules

In this tutorial, will be discussing a rare type of plot known as Joy Plots using the `JoyPy` library. The library is an open-source python library that is used to create Joy Plots.

## Introduction to Joy Plots in Python

Ridgeline Plot or Joy Plot is a kind of chart that helps visualize distributions of several groups of a category in a dataset. Each category produces a density curve overlapping with each other which ends up creating a beautiful piece of the plot. One of many popular use cases of the Joy Chart is computing the numerical variable trend with time.

## Implementing Joy Plots in Python

We will start by installing a JoyPy library by using the `pip` command below.

```pip install joypy
```

We will be importing the modules using the code below. For the datasets, we will be using the seaborn `tips` dataset in the later section.

```import joypy
import seaborn as sns
```

Also Read: Data Visualization with Python Seaborn and Pandas

For this article, we will make use of the famous `Tips` dataset which is already present in the `seaborn` library.

```DATA = sns.load_dataset('tips')
print(DATA)
```

### Creating Basic Joy Plots

Now we will start by creating different types of plots using different columns of the dataset of the previous section. Look at the code below.

```joypy.joyplot(DATA)
```

### Plotting on the Basis of a Column

We can also look at how the data is distributed on the basis of a single column using the code below. We will be seeing the distribution on the basis of the gender of the person.

```joypy.joyplot(DATA, by="sex")
```

### Customize Plot Colours and Fade Attribute

We can add the `fade` option to the Joy Plot to visualize overlapping density curves more clearly and also give `colour` to all the density curves. Look at the code and output below!

```joypy.joyplot(DATA, by = 'day', color = 'Orange', fade = True)
```

We can also specify the `colormap` instead of a solid color using the code below. Look at the visual plot as well!

```from matplotlib import cm
joypy.joyplot(DATA, by = 'day', colormap=cm.autumn, fade = True)
```

### Customizing Joy Plots Layout and Size

We can change the `range_style` to make the y-axis visible for the width of the curve and also set the `figure size` as well. Look at the code below.

```joypy.joyplot(DATA, by = 'sex', colormap = cm.autumn, fade = True,
range_style='own', figsize = (10,6))
```

## Conclusion

In this article, we learned about Joy Plots, and how to plot them in Python. We also learned how to beautify and customize our plots to maximize the information we gain from the plots.

Hope you liked the tutorial! Thank you for reading!

close
Generic selectors
Exact matches only
Search in title
Search in content