Adventures in Machine Learning

Pandas Histograms: Creating Custom Visualizations for Data Analysis

Creating Histograms in Pandas

Histograms are an essential part of data analysis and data visualization. They are a graphical representation of the frequency distribution of a dataset.

Histograms can be created in various programming languages such as R and Python, but in this article, we will focus on creating histograms in Pandas, the popular data manipulation library for Python.

Creating Frequency Histogram

A frequency histogram is a graphical representation of the number of occurrences (frequency) of data within a given range, usually represented by bars of different heights. In Pandas, creating a frequency histogram is straightforward and can be done with just one line of code.

Consider the following Pandas Series:


import pandas as pd

data = pd.read_csv(‘data.csv’)

series = data[‘age’]


To create a frequency histogram of the age column, use the hist() method as follows:




This will create a frequency histogram with default parameters such as the number of bins and color of bars. The number of bins represents the number of intervals in which the data is divided, and the color of bars is blue by default.

You can customize the number of bins and color of bars by passing them as arguments to the hist() method. “`python

series.hist(bins=30, color=’green’)


Here, we have set the number of bins to 30 and changed the color of bars to green.

Creating Density Histogram

A density histogram is a type of histogram that shows the probability density of the distribution rather than the frequency. It is sometimes called a normalized histogram because the area under the curve represents the total probability of the data.

In Pandas, creating a density histogram is similar to creating a frequency histogram. To create a density histogram, use the kde parameter of the hist() method and set it to True.


series.hist(bins=30, color=’green’, kde=True)


Here, we have set the number of bins to 30, changed the color of bars to green, and enabled the density curve.

Creating Custom Histogram

Often, we need to customize the histogram further by adding axis labels, plot title, or changing the style of the plot. Pandas provides us with different options to achieve this.

To change the style of the histogram, use the style parameter of the hist() method. Pandas supports different built-in styles such as ‘classic’, ‘dark_background’, ‘ggplot’, etc.


import matplotlib.pyplot as plt‘ggplot’)

series.hist(bins=30, color=’green’)


This will create a histogram with the ggplot style. To set axis labels and title, use the xlabel(), ylabel(), and title() functions of Matplotlib.


plt.xlabel(‘Age (years)’)


plt.title(‘Age Distribution’)


This will add x-axis and y-axis labels and a plot title to the histogram. Lastly, to save the plot to a file, use the savefig() function of Matplotlib.




This will save the histogram as a PNG file in the current working directory.

Additional Resources

Histograms are just one type of plot that we can create in Python. There are several other useful visualizations that we can use to explore and analyze data.

Some of the common plots in Python include scatter plots, line plots, bar plots, box plots, and heatmaps. These plots are useful in different scenarios, and it’s essential to understand which plot to use for a specific purpose.

Python provides several libraries for data visualization, such as Matplotlib, Seaborn, Plotly, and Bokeh. Each library has its strengths and weaknesses, and it’s up to the user to choose the library that fits their needs.

In conclusion, Pandas provides us with an easy way to create and customize histograms for data exploration and visualization. By understanding the different types of histograms and customization options available, we can create informative and visually appealing plots that help us understand our data.

Histograms are a crucial tool for data analysis and visualization, and Pandas offers a straightforward way to create them in Python. This article explored three types of histograms that can be created in Pandas: frequency, density, and custom.

Through the use of parameters such as number of bins, color of bars, and style of the plot, we can customize the histograms to suit our needs. This article also emphasized the importance of choosing the appropriate visualization for each data set and discussed other common plots in Python.

With this knowledge, we can create informative and visually appealing plots that help us understand our data.