MLC Isometric Heatmap

Kapitel 5: Zeitreihen ohne Handarbeit

Ein Raster von Hand zu füllen ist bei acht mal acht Zellen zumutbar. Bei einem Jahr sind es 371, und die Zuordnung von Zeitstempel zu Zelle ist genau die Art Rechnung, bei der Sommerzeit und Wochenanfang Fehler erzeugen, die niemand sieht.

Dafür gibt es die Aggregatoren. Sie liegen in einem eigenen Einstiegspunkt, damit niemand sie mitlädt, der sie nicht braucht:

import { presets } from 'mlc-isometric-heatmap/presets';

const events = [
  { timestamp: new Date('2026-06-09T10:15:00Z'), value: 5 },
  { timestamp: new Date('2026-06-09T15:30:00Z'), value: 20 },
];

24 Stunden gegen Wochentage

const grid = presets.aggregate24h(events, { startOfWeek: 1 });

24 Spalten, 7 Zeilen. startOfWeek: 1 beginnt am Montag — die Vorgabe des Sonntags stammt aus dem amerikanischen Kalender und ist hierzulande fast immer falsch.

Das ist die Ansicht für Tagesrhythmen: wann läuft die Anlage, wann ist es still, und unterscheidet sich das Wochenende.

Zwei Messreihen als Tageszeitleiste.
Ein einzelner Tag mit vier Messpunkten — auch dünne Daten ergeben ein lesbares Bild.

Ein Monat

const grid = presets.aggregateMonth(events, { year: 2026, month: 5 });

Wochen als Spalten, Wochentage als Zeilen. Der Monat ist die Ansicht, in der ein Mensch noch jeden einzelnen Tag wiederfindet.

Ein Monat mit Höhenraster als Massstabswand im Rücken.
Nur Montag bis Freitag: wo das Wochenende nichts beiträgt, kostet es nur Platz.

Ein halbes Jahr

Zwischen Monat und Jahr klafft eine Lücke: 26 Wochen sind zu viel für die Monatsansicht und zu wenig, um im Jahresraster als Muster zu erscheinen. Dafür gibt es die Sechsmonatsvorlagen, wahlweise mit monatlichen Trennern.

Sechs Monate mit Monatstrennern: die Grenzen bleiben ablesbar.
Zwei Reihen über sechs Monate, mit Höhenraster.

Ein Jahr

const grid = presets.aggregateYear(events, { year: 2026 });

53 Wochen gegen 7 Wochentage — die Form, die man von Beitragsgrafiken kennt, hier mit Höhe. Bei dieser Dichte sind Beschriftungen oft mehr Störung als Hilfe; showRowLabels: false nimmt sie weg.

Ein Jahr ohne Zeilenbeschriftung: das Muster trägt allein.
Dasselbe Jahr als Höhenrelief statt als Säulen.

Mehrere Gruppen nebeneinander

Vergleicht man Zeiträume oder Standorte, lassen sich mehrere Raster zu einer Grafik zusammensetzen, statt sie nebeneinanderzulegen. Der Vorteil ist ein gemeinsamer Massstab — getrennte Grafiken haben getrennte Maxima, und der Vergleich täuscht.

Mehrere Monatsgruppen in einer Grafik, mit gemeinsamem Massstab.

Lizenz: CC BY-NC 4.0