From 3dbbbec3b2a3fdeb6a22a9d73689ffd1fba635d5 Mon Sep 17 00:00:00 2001 From: oliexdev Date: Fri, 11 Dec 2020 07:31:07 +0100 Subject: [PATCH] don't calculate zero measurements into the trendline calculations --- .../gui/measurement/ChartMeasurementView.java | 26 ++++++++++++++----- 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/android_app/app/src/main/java/com/health/openscale/gui/measurement/ChartMeasurementView.java b/android_app/app/src/main/java/com/health/openscale/gui/measurement/ChartMeasurementView.java index 1630aba1..85b7db29 100644 --- a/android_app/app/src/main/java/com/health/openscale/gui/measurement/ChartMeasurementView.java +++ b/android_app/app/src/main/java/com/health/openscale/gui/measurement/ChartMeasurementView.java @@ -484,22 +484,36 @@ public class ChartMeasurementView extends LineChart { private void addTrendLine(List lineDataSets) { - List scaleMeasurementsAsTrendlineList = getScaleMeasurementsAsTrendline(scaleMeasurementList); - for (MeasurementView view : measurementViews) { if (view instanceof FloatMeasurementView && view.isVisible()) { final FloatMeasurementView measurementView = (FloatMeasurementView) view; final List lineEntries = new ArrayList<>(); + ArrayList nonZeroScaleMeasurementList = new ArrayList<>(); + + // filter first all zero measurements out, so that the follow-up trendline calculations are not based on them + for (int i=0; i scaleMeasurementsAsTrendlineList = getScaleMeasurementsAsTrendline(nonZeroScaleMeasurementList); + for (int i=0; i