From 1253e00186ab87d474f785f7cb011e9fd1b48f96 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 24 Nov 2020 20:18:13 +0100 Subject: [PATCH] separate summing --- rowers/interactiveplots.py | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 05be7fe0..6596b96d 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -1594,20 +1594,29 @@ def fitnessfit_chart(workouts,user,workoutmode='water',startdate=None, dates.append(datetime.datetime.combine(w.date,datetime.datetime.min.time())) testpower.append(powertest) + fatigues.append(np.nan) + fitnesses.append(np.nan) - # create Fitness and Fatigue number - fatigue = 0 - fitness = 0 - previousworkouts = Workout.objects.filter(user=user.rower,date__lte=w.date, + + allworkouts = Workout.objects.filter(user=user.rower,date__lte=enddate, + date__gte=startdate) + for w in allworkouts: + # create Fitness and Fatigue number + fatigue = 0 + fitness = 0 + + previousworkouts = Workout.objects.filter(user=user.rower,date__lte=w.date, date__gte=startdate) - for ww in previousworkouts: - delta = (w.date-ww.date).days - weight = getattr(ww,metricchoice) - fatigue += weight*math.exp(-delta/kfatigue) - fitness += weight*math.exp(-delta/kfitness) + for ww in previousworkouts: + delta = (w.date-ww.date).days + weight = getattr(ww,metricchoice) + fatigue += weight*math.exp(-delta/kfatigue) + fitness += weight*math.exp(-delta/kfitness) - fatigues.append(fatigue) - fitnesses.append(fitness) + fatigues.append(fatigue) + fitnesses.append(fitness) + testpower.append(np.nan) + dates.append(datetime.datetime.combine(w.date,datetime.datetime.min.time())) @@ -1624,6 +1633,11 @@ def fitnessfit_chart(workouts,user,workoutmode='water',startdate=None, df.sort_values(['date'],inplace=True) + df = df.fillna(0) + + + df = df.groupby(['date']).sum() + df['date'] = df.index.values #df = df.fillna(0) df['testdup'] = df['testpower'].shift(1)