From 8612ea9087e4bfd31639adbc1ca63c1ad5a4cc74 Mon Sep 17 00:00:00 2001 From: Gregory Trullemans Date: Thu, 11 Apr 2024 08:42:03 +0200 Subject: [PATCH] Add BMI to height/weight graph --- jarvis/followup/models.py | 3 ++ .../followup/templates/heightweight/list.html | 29 ++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/jarvis/followup/models.py b/jarvis/followup/models.py index ac8aba1..c14dec8 100644 --- a/jarvis/followup/models.py +++ b/jarvis/followup/models.py @@ -235,6 +235,9 @@ class WellBeing(Markdownizable, Seasonisable): Représente l'état psychologique/physique d'un gymnaste """ + class Meta: + ordering = ["date", ] + gymnast = models.ForeignKey( Gymnast, on_delete=models.CASCADE, default=None, related_name="wellbeings" ) diff --git a/jarvis/followup/templates/heightweight/list.html b/jarvis/followup/templates/heightweight/list.html index d9cad38..42a817f 100644 --- a/jarvis/followup/templates/heightweight/list.html +++ b/jarvis/followup/templates/heightweight/list.html @@ -205,6 +205,13 @@ gradient_stroke_orange.addColorStop(0.5, 'rgba(255, 159, 64, 0.2)'); gradient_stroke_orange.addColorStop(0.25, 'rgba(255, 159, 64, 0)'); + var border_color_green = 'rgb(75, 192, 192)'; + var gradient_stroke_green = ctx.createLinearGradient(0, 230, 0, 50); + gradient_stroke_green.addColorStop(1, 'rgba(75, 192, 192, 0.4)'); + gradient_stroke_green.addColorStop(0.75, 'rgba(75, 192, 192, 0.3)'); + gradient_stroke_green.addColorStop(0.5, 'rgba(75, 192, 192, 0.2)'); + gradient_stroke_green.addColorStop(0.25, 'rgba(75, 192, 192, 0)'); + var height_values = [ {% for height_weight in height_weight_list %} { @@ -223,6 +230,15 @@ {% endfor %} ] + var bmi_value = [ + {% for height_weight in height_weight_list %} + { + x: '{{ height_weight.date | date:"d-m-Y" }}', + y: '{{ height_weight.bmi }}' + }, + {% endfor %} + ] + var height_weight_data = { datasets: [ { @@ -233,6 +249,7 @@ pointBackgroundColor: border_color_pink, fill: true, data: height_values, + hidden: true, }, { label: 'Height', @@ -241,7 +258,17 @@ borderColor: border_color_orange, pointBackgroundColor: border_color_orange, fill: true, - data: weight_values + data: weight_values, + hidden: true, + }, + { + label: 'BMI', + cubicInterpolationMode: 'monotone', + backgroundColor: gradient_stroke_green, + borderColor: border_color_green, + pointBackgroundColor: border_color_green, + fill: true, + data: bmi_value, }, ], };