import pandas as pd
import numpy as np
import ultraplot as uplt

rng = np.random.RandomState(0)
df = pd.DataFrame(
   (rng.normal(size=(12, 18)).cumsum(axis=1).cumsum(axis=0) - 1),
   index=pd.date_range("2026-01-01", periods=12, freq="MS"),
   columns=np.arange(18),
)
df.name = "temperature (\N{DEGREE SIGN}C)"
df.index.name = "month"
df.columns.name = "variable"

fig, ax = uplt.subplots()
cs = ax.contourf(df, cmap="batlow", colorbar="t")
fig.colorbar(cs, ax=ax, loc="r", width="6mm")