Calendar Heatmap
Cooking Meals Calendar
Daily home-cooked meals tracked in neon yellow gradient for healthy eating.
Output
Python
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import LinearSegmentedColormap
import matplotlib.patches as mpatches
np.random.seed(130)
days = 365
meals = np.random.poisson(2, days)
meals = np.clip(meals, 0, 4)
weeks = 53
data = np.zeros((7, weeks))
for i, val in enumerate(meals):
week = i // 7
day = i % 7
if week < weeks:
data[day, week] = val
# CLAUDE.md Neon Yellow palette
colors_neon = ['#ffffff', '#f8fce0', '#e5f978', '#D3F527']
cmap = LinearSegmentedColormap.from_list('neon_yellow', colors_neon, N=256)
fig, ax = plt.subplots(figsize=(16, 4), facecolor='#ffffff')
ax.set_facecolor('#ffffff')
im = ax.imshow(data, cmap=cmap, aspect='auto', vmin=0, vmax=4)
ax.set_yticks(range(7))
ax.set_yticklabels(['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'], fontsize=9, color='#374151')
ax.set_xticks(range(0, 52, 4))
ax.set_xticklabels(['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', ''],
fontsize=9, color='#374151')
ax.set_title('Home Cooking - Meals Per Day', fontsize=16, color='#1f2937', fontweight='bold', pad=15)
for i in range(8):
ax.axhline(y=i-0.5, color='#e5e7eb', linewidth=0.5)
for i in range(weeks+1):
ax.axvline(x=i-0.5, color='#e5e7eb', linewidth=0.5)
ax.tick_params(colors='#374151', length=0)
for spine in ax.spines.values():
spine.set_visible(False)
legend_elements = [mpatches.Patch(facecolor=c, label=l, edgecolor='#d1d5db')
for c, l in zip(colors_neon, ['0', '1', '2', '3-4'])]
ax.legend(handles=legend_elements, loc='upper left', bbox_to_anchor=(0, -0.15), ncol=4,
fontsize=8, facecolor='#f9fafb', edgecolor='#d1d5db', labelcolor='#374151', title='Meals',
title_fontsize=9)
total = int(np.sum(meals))
ax.annotate(f'{total} meals cooked', xy=(0.98, 1.1), xycoords='axes fraction',
fontsize=11, color='#D3F527', ha='right', fontweight='bold')
plt.tight_layout()
plt.subplots_adjust(bottom=0.25)
plt.show()
Library
Matplotlib
Category
Time Series
More Calendar Heatmap examples
☕