Heatmap
Employee Skill Assessment Grid
Seamless heatmap displaying employee competency levels across skills
Output
Python
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import LinearSegmentedColormap
fig, ax = plt.subplots(figsize=(12, 8), facecolor='#ffffff')
ax.set_facecolor('#ffffff')
np.random.seed(42)
employees = ['Alice', 'Bob', 'Carol', 'David', 'Emma', 'Frank', 'Grace']
skills = ['Python', 'SQL', 'ML', 'Communication', 'Leadership', 'Problem Solving']
data = np.random.randint(1, 6, (len(employees), len(skills)))
# Modern gradient: Peach to Coral to Rose
colors = ['#fff7ed', '#fed7aa', '#fb923c', '#ea580c', '#9a3412']
cmap = LinearSegmentedColormap.from_list('modern', colors, N=5)
im = ax.imshow(data, cmap=cmap, aspect='auto', vmin=1, vmax=5)
ax.set_xticks(range(len(skills)))
ax.set_yticks(range(len(employees)))
ax.set_xticklabels(skills, rotation=45, ha='right', color='#374151', fontsize=10)
ax.set_yticklabels(employees, color='#1f2937', fontsize=10, fontweight='500')
for i in range(len(employees)):
for j in range(len(skills)):
val = data[i, j]
color = '#ffffff' if val >= 4 else '#1f2937'
ax.text(j, i, f'{val}', ha='center', va='center', color=color, fontsize=12, fontweight='bold')
cbar = plt.colorbar(im, ax=ax, shrink=0.8, pad=0.02, ticks=[1, 2, 3, 4, 5])
cbar.set_label('Skill Level', color='#1f2937', fontsize=11)
cbar.ax.set_yticklabels(['Beginner', 'Basic', 'Intermediate', 'Advanced', 'Expert'])
cbar.outline.set_edgecolor('#e5e7eb')
plt.setp(plt.getp(cbar.ax.axes, 'yticklabels'), color='#6b7280', fontsize=8)
for spine in ax.spines.values():
spine.set_color('#e5e7eb')
ax.set_title('Team Skill Assessment Matrix', fontsize=16, color='#111827', fontweight='bold', pad=15)
plt.tight_layout()
plt.show()
Library
Matplotlib
Category
Heatmaps & Density
More Heatmap examples
☕