Display the Pandas DataFrame in Heatmap style

Pandas is a powerful data analysis library that offers a wide range of functions to work with structured data. One of the most popular ways to represent data is through a heatmap, which allows you to visualize data in a tabular format with colors representing the values. In this article, we will explore how to display a Pandas DataFrame in a heatmap style using the Seaborn library.

A heatmap is a graphical representation of data where individual values are represented by colors. It's particularly useful for identifying patterns, correlations, and outliers in datasets at a glance.

Installing Required Libraries

Before creating heatmaps, ensure you have the necessary libraries installed ?

pip install pandas seaborn matplotlib

Basic Heatmap Creation

Let's start with a simple example using sample data ?

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

# Create sample data
data = {
    'Product_A': [23, 45, 56, 78, 32],
    'Product_B': [67, 34, 78, 90, 45],
    'Product_C': [12, 56, 89, 23, 67],
    'Product_D': [45, 78, 34, 56, 89]
}

df = pd.DataFrame(data, index=['Jan', 'Feb', 'Mar', 'Apr', 'May'])
print("Sample DataFrame:")
print(df)

# Create basic heatmap
plt.figure(figsize=(8, 6))
sns.heatmap(df)
plt.title('Sales Data Heatmap')
plt.show()
Sample DataFrame:
     Product_A  Product_B  Product_C  Product_D
Jan         23         67         12         45
Feb         45         34         56         78
Mar         56         78         89         34
Apr         78         90         23         56
May         32         45         67         89

Customizing Heatmap Appearance

Adding Color Schemes and Annotations

You can enhance readability by adding annotations and choosing appropriate color schemes ?

# Heatmap with annotations and custom colormap
plt.figure(figsize=(10, 6))
sns.heatmap(df, 
            cmap='Blues',           # Color scheme
            annot=True,             # Show values in cells
            fmt='d',                # Integer format
            cbar=True,              # Show colorbar
            linewidths=0.5)         # Add gridlines

plt.title('Sales Data Heatmap with Annotations', fontsize=14)
plt.xlabel('Products', fontsize=12)
plt.ylabel('Months', fontsize=12)
plt.show()

Using Correlation Heatmaps

Correlation heatmaps are particularly useful for identifying relationships between variables ?

# Create correlation heatmap
correlation_matrix = df.corr()
print("Correlation Matrix:")
print(correlation_matrix)

plt.figure(figsize=(8, 6))
sns.heatmap(correlation_matrix,
            cmap='coolwarm',        # Diverging colormap for correlation
            annot=True,
            fmt='.2f',              # Two decimal places
            center=0,               # Center colormap at 0
            square=True,            # Make cells square
            cbar_kws={'label': 'Correlation Coefficient'})

plt.title('Product Sales Correlation Heatmap')
plt.show()
Correlation Matrix:
           Product_A  Product_B  Product_C  Product_D
Product_A   1.000000  -0.105409   0.105409   0.000000
Product_B  -0.105409   1.000000  -0.315873  -0.315873
Product_C   0.105409  -0.315873   1.000000  -0.315873
Product_D   0.000000  -0.315873  -0.315873   1.000000

Advanced Customization Options

# Advanced heatmap with multiple customizations
plt.figure(figsize=(12, 8))

# Create a mask for the upper triangle (optional)
import numpy as np
mask = np.triu(np.ones_like(correlation_matrix, dtype=bool))

sns.heatmap(correlation_matrix,
            mask=mask,              # Hide upper triangle
            cmap='RdYlBu_r',       # Red-Yellow-Blue reversed
            annot=True,
            fmt='.3f',
            square=True,
            linewidths=2,
            cbar_kws={'shrink': 0.8, 'label': 'Correlation'},
            annot_kws={'size': 12, 'weight': 'bold'})

plt.title('Lower Triangle Correlation Heatmap', fontsize=16, pad=20)
plt.xticks(rotation=45)
plt.yticks(rotation=0)
plt.tight_layout()
plt.show()

Common Heatmap Parameters

Parameter Description Example Values
cmap Color scheme 'Blues', 'viridis', 'coolwarm'
annot Show cell values True, False
fmt Number format '.2f', 'd', '.1%'
center Center point for colormap 0, None
linewidths Width of grid lines 0.5, 1, 2

Conclusion

Heatmaps provide an intuitive way to visualize DataFrame data using color gradients. Seaborn's heatmap() function offers extensive customization options for creating professional-looking visualizations. Use correlation heatmaps to identify relationships and regular heatmaps to spot patterns in your data.

Updated on: 2026-03-27T10:37:02+05:30

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements