aber das Problem ist ja, dass ich nicht nur zwei Punkte in die Berechnung einbeziehen muss, sondern 52-53 (Je nach Jahr ;) ). Wenn jetzt der letzte Wert auf der x-Achse kleiner ist als der erste bekomme ich eine negative Trendlinie, obwohl die "Jahresbilanz" ja durchaus positiv sein könnte.
Erst berechnest du den Schwerpunkt deiner Werte (bei Daten von Wochen gehe ich mal davon aus, daß die fortlaufend sind und immer den gleichen Abstand auf der x-Achse haben):
$leange = count($daten);
$mittelwert_x = $leange / 2;
$mittelwert_y = array_sum($daten) / $leange;
dann den Anstieg der Geraden
$summe_1 = 0;
$summe_2 = 0;
for ($zz = 0; $zz < $leange; $zz++) {
$xi_diff = $zz - $mittelwert_x;
$summe_1 += $xi_diff * ($daten[$zz] - $mittelwert_y);
$summe_2 += $xi_diff * $xi_diff;
}
$m_gerade = $summe_1 / $summe_2;
Der Rest sollte kein Problem sein.