Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Join us at FabCon Vienna from September 15-18, 2025, for the ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM. Get registered

Reply
DCELL
Resolver I
Resolver I

seaborn plot not rendering properly

I'm running this code which you can find in the microsoft learn docs. Only the first row of the matrix has numbers, when they all should have numbers

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

# Load the penguins dataset
penguins = pd.read_csv('https://raw.githubusercontent.com/MicrosoftLearning/dp-data/main/penguins.csv')

# Calculate the correlation matrix
corr = penguins.corr()

# Create a heatmap
sns.heatmap(corr, annot=True)
plt.show()

 

Result:

DCELL_0-1742856766905.png

 

Expected result:

Apply advanced data exploration techniques - Training | Microsoft Learn

 

1 ACCEPTED SOLUTION
v-veshwara-msft
Community Support
Community Support

Hi @DCELL ,
Thanks for posting in Microsoft Fabric Community,

The issue where only the first row of numbers is showing up in the heatmap happens because Seaborn sometimes hides text when it automatically places the annotations. This can make some values disappear, especially when the background color is too dark or light.

 

To fix this, manually add the numbers using plt.text(). This makes sure that all values are placed clearly inside each cell, so nothing gets hidden or overwritten. It also gives better control over how the numbers look, making them easy to read no matter the background color.

 

Here is the updated code and output:

import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
# Load the dataset
penguins = pd.read_csv('https://raw.githubusercontent.com/MicrosoftLearning/dp-data/main/penguins.csv')

# Calculate the correlation matrix
corr = penguins.corr()

# Create heatmap without annotations
ax = sns.heatmap(
    corr, 
    cmap='coolwarm', 
    linewidths=0.5, 
    vmin=-1, vmax=1, 
    cbar_kws={"shrink": 0.8}
)

# Manually add text annotations for every cell
for i in range(corr.shape[0]):
    for j in range(corr.shape[1]):
        plt.text(
            j + 0.5,  # X position
            i + 0.5,  # Y position
            f"{corr.iloc[i, j]:.2f}",  # Text content
            ha='center', 
            va='center', 
            color='black', 
            fontsize=10, 
        )

plt.show()

vveshwaramsft_0-1742887182884.png

Hope this helps. Please reach out forfurther assistance.

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and a kudos would be appreciated.

 

Regards,
Vinay.

 

View solution in original post

1 REPLY 1
v-veshwara-msft
Community Support
Community Support

Hi @DCELL ,
Thanks for posting in Microsoft Fabric Community,

The issue where only the first row of numbers is showing up in the heatmap happens because Seaborn sometimes hides text when it automatically places the annotations. This can make some values disappear, especially when the background color is too dark or light.

 

To fix this, manually add the numbers using plt.text(). This makes sure that all values are placed clearly inside each cell, so nothing gets hidden or overwritten. It also gives better control over how the numbers look, making them easy to read no matter the background color.

 

Here is the updated code and output:

import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
# Load the dataset
penguins = pd.read_csv('https://raw.githubusercontent.com/MicrosoftLearning/dp-data/main/penguins.csv')

# Calculate the correlation matrix
corr = penguins.corr()

# Create heatmap without annotations
ax = sns.heatmap(
    corr, 
    cmap='coolwarm', 
    linewidths=0.5, 
    vmin=-1, vmax=1, 
    cbar_kws={"shrink": 0.8}
)

# Manually add text annotations for every cell
for i in range(corr.shape[0]):
    for j in range(corr.shape[1]):
        plt.text(
            j + 0.5,  # X position
            i + 0.5,  # Y position
            f"{corr.iloc[i, j]:.2f}",  # Text content
            ha='center', 
            va='center', 
            color='black', 
            fontsize=10, 
        )

plt.show()

vveshwaramsft_0-1742887182884.png

Hope this helps. Please reach out forfurther assistance.

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and a kudos would be appreciated.

 

Regards,
Vinay.

 

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June FBC25 Carousel

Fabric Monthly Update - June 2025

Check out the June 2025 Fabric update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.