';
// ---------------------------------------------------------------------------------
// GRUPPE 0: KOPFZEILE (Leere Ecke + Alle Pollenarten)
// ---------------------------------------------------------------------------------
$html .= '
';
$html .= '
'; // Oben Links bleibt leer
foreach ($pollenKeys as $pName) {
$html .= '
';
$html .= '
' . getPollenSVG($pName) . '
';
$html .= '
' . htmlspecialchars($pName) . '
';
$html .= '
';
}
$html .= '
';
// ---------------------------------------------------------------------------------
// GRUPPEN 1-X: TAGE (Tag-Header + Messwerte der jeweiligen Pollen)
// ---------------------------------------------------------------------------------
for ($i = 0; $i < $numDays; $i++) {
$ts = strtotime("+$i days");
$tagStr = ($i == 0) ? "HEUTE" : (($i == 1) ? "MORGEN" : $tage[date('w', $ts)]);
$html .= '
';
// Tag Anzeige (erste Zelle der Gruppe)
$html .= '
';
$html .= '
'.$tagStr.'
';
$html .= '
'.date('j', $ts).'
';
$html .= '
'.$monate[date('n', $ts)].'
';
$html .= '
';
// Werte für jede Pollenart an diesem Tag
foreach ($pollenKeys as $pName) {
$levels = $data['index'][$pName];
$lvl = isset($levels[$i]) ? (int)$levels[$i] : 0;
$tooltip = isset($data['legend']["#$lvl"]) ? $data['legend']["#$lvl"] : "Keine Pollen";
if (strtolower($tooltip) == "keine") $tooltip = "Keine Pollen";
// Segmente für den runden Verlauf generieren
$seg =[];
for($s=0; $s<6; $s++) {
$seg[] = ($lvl > 0 && $s < $lvl) ? $palette[min($s, 5)] : 'rgba(255,255,255,0.08)';
}
$conic = "conic-gradient({$seg[0]} 0deg 55deg, transparent 55deg 60deg, {$seg[1]} 60deg 115deg, transparent 115deg 120deg, {$seg[2]} 120deg 175deg, transparent 175deg 180deg, {$seg[3]} 180deg 235deg, transparent 235deg 240deg, {$seg[4]} 240deg 295deg, transparent 295deg 300deg, {$seg[5]} 300deg 355deg, transparent 355deg 360deg)";
$html .= '
';
$html .= '
';
$html .= '
';
$html .= '
'.$lvl.'
';
$html .= '
';
$html .= '
'.htmlspecialchars($tooltip).'
';
$html .= '
';
}
$html .= '