From f564b4489037188465b7ed98c12f8215c822c7f1 Mon Sep 17 00:00:00 2001
From: Eilert Tunheim <emtunhei@stud.ntnu.no>
Date: Wed, 20 Apr 2022 16:17:23 +0200
Subject: [PATCH] runnable regression, but the output is wrong

---
 .../GUI/LineChartFunctionality.java           |  51 +++++++++++++++++-
 .../GUI/LineChartFunctionality.class          | Bin 8996 -> 10227 bytes
 2 files changed, 50 insertions(+), 1 deletion(-)

diff --git a/src/main/java/com/application/GUI/LineChartFunctionality.java b/src/main/java/com/application/GUI/LineChartFunctionality.java
index badbc92..d5d3eb9 100644
--- a/src/main/java/com/application/GUI/LineChartFunctionality.java
+++ b/src/main/java/com/application/GUI/LineChartFunctionality.java
@@ -116,6 +116,7 @@ public class LineChartFunctionality {
                 index += 1;
             }
             updateLineChart(newSeries);
+            lineChart.setOpacity(0.5);
         }
 
         // Stores the data from the confidence interval in a new map
@@ -129,23 +130,71 @@ public class LineChartFunctionality {
             }
         }
 
+
         // Defines an array to be used for the regression
         double[][] data = new double[confidenceIntervalData.size()][jMaxSize];
 
         System.out.println(confidenceIntervalData);
         for (int i = 0; i < confidenceIntervalData.size(); i++) {
+
             ArrayList<Double> list = confidenceIntervalData.get(i);
+
+            System.out.println(list.size());
             for (int j = 0; j < list.size(); j++) {
-                data[i][j] += list.get(j);
+                data[i][j] = list.get(j);
+            }
+
+            for (int j = 0; j < data[i].length; j++) {
+                System.out.println("data[i][j]: "+data[i][j]);
+                if(data[i][j] == 0.0){
+                    double sum = 0.0;
+                    double index = 0.0;
+                    for (int k = 0; k < list.size(); k++) {
+                        if(data[i][k] != 0.0){
+                            sum += data[i][k];
+                            index += 1;
+                        }
+                    }
+                    System.out.println("sum/index: "+ sum/index);
+                    data[i][j] = sum/index;
+                }
             }
         }
 
+
         System.out.println(data.length);
         System.out.println(data[12][1]);
 
         SimpleRegression simpleRegression = new SimpleRegression();
 
         simpleRegression.addData(data);
+        simpleRegression.regress();
+
+
+        for (double[] datum : data) {
+            System.out.println("");
+            for (double v : datum) {
+                System.out.println(v);
+            }
+        }
+
+
+
+        XYChart.Series<String, Number> regressionSeries = new XYChart.Series<String, Number>();
+        for (int i = 0; i < simpleRegression.getN(); i++) {
+
+            // Connect the data to a series
+            System.out.println(simpleRegression.predict(i));
+            regressionSeries.getData().add(new XYChart.Data<String, Number>(String.valueOf(i), simpleRegression.predict(i)));
+        }
+        updateLineChart(regressionSeries);
+        lineChart.setOpacity(1);
+
+        System.out.println("Get R: " + simpleRegression.getR());
+        System.out.println("Get getRSquare: " + simpleRegression.getRSquare());
+        System.out.println("Get getRegressionSumSquares: " + simpleRegression.getRegressionSumSquares());
+
+        System.out.println("Get N: " + simpleRegression.getN());
 
         // and then you can predict the time at a given temperature value
         System.out.println("Predicted Time: "  + simpleRegression.predict(35));
diff --git a/target/classes/com/application/GUI/LineChartFunctionality.class b/target/classes/com/application/GUI/LineChartFunctionality.class
index b70f1f5ff9795af6291e177c4daa94c56eb5bae4..30aa13c4fd74adfb7823e3ea88c92328da5dd2da 100644
GIT binary patch
delta 4100
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

delta 2912
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
NMt(3$l~IjR9RR92O2hyF

-- 
GitLab