Heatmaps for Correlation
Correlation recap
Section titled “Correlation recap”Correlation describes how two numeric variables move together.
- +1: strong positive relationship
- -1: strong negative relationship
- 0: no linear relationship
flowchart LR A["Numeric columns"] --> B["df.corr()
(square correlation matrix)"] B --> C["sns.heatmap(corr)"] C --> D["Color grid
(+ optional annot=True numbers)"]
Correlation heatmap
Section titled “Correlation heatmap”import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
penguins = sns.load_dataset("penguins").dropna()
corr = penguins[[
"bill_length_mm",
"bill_depth_mm",
"flipper_length_mm",
"body_mass_g",
]].corr()
plt.figure(figsize=(6, 4))
sns.heatmap(corr, annot=True, cmap="coolwarm", vmin=-1, vmax=1)
plt.title("Penguins correlation")
plt.tight_layout()
plt.show()Visualize it
Section titled “Visualize it”Each cell’s color encodes a correlation value from -1 to +1 — amber for strong positive, blue for strong negative, and dim in the middle for near zero:
- Correlation is not causation.
- Outliers can inflate correlations.
- For non-linear relationships, correlation can be misleading.
Continue to Pair Plots to see the raw scatter relationships behind each correlation number.
🧪 Try It Yourself
Section titled “🧪 Try It Yourself”Exercise 1 – Compute a Correlation Matrix
Section titled “Exercise 1 – Compute a Correlation Matrix”Exercise 2 – Draw the Heatmap With Numbers
Section titled “Exercise 2 – Draw the Heatmap With Numbers”Exercise 3 – Fix the Color Scale
Section titled “Exercise 3 – Fix the Color Scale”pch.coffeeTagline
pch.coffeeCtapch.feedbackHeading
pch.feedbackSubheading