diff gnv-artifacts/src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java @ 454:04cfb4e3da4f

Refactored statistics classes a bit. Added class for vertical cross sections. gnv-artifacts/trunk@503 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 04 Jan 2010 15:20:14 +0000
parents
children f7038820df2e
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/statistics/AbstractStatistics.java	Mon Jan 04 15:20:14 2010 +0000
@@ -0,0 +1,100 @@
+package de.intevation.gnv.statistics;
+
+import java.util.Collection;
+import java.util.ArrayList;
+
+import org.apache.commons.math.stat.descriptive.DescriptiveStatistics;
+
+import org.apache.commons.math.stat.regression.SimpleRegression;
+
+import org.apache.log4j.Logger;
+
+/**
+ * @author Sascha L. Teichmann (sascha.teichmann@intevation.de)
+ */
+public abstract class AbstractStatistics
+implements            Statistics
+{
+    private static Logger log = Logger.getLogger(
+        AbstractStatistics.class);
+
+    public AbstractStatistics() {
+    }
+
+    protected StatisticSet generateStatisticsValues(
+        DescriptiveStatistics lStatistics,
+        SimpleRegression      lRegression, 
+        String                statisticName
+    ) {
+        StatisticSet statisticSet = new StatisticSet(statisticName);
+        
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.arithmeticMean",
+                lStatistics.getMean()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.kurtosis", 
+                lStatistics.getKurtosis()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.max",
+                lStatistics.getMax()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.min",
+                lStatistics.getMin()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.n",
+                lStatistics.getN()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.percentile.90",
+                lStatistics.getPercentile(90)));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.percentile.75",
+                lStatistics.getPercentile(75)));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.percentile.50",
+                lStatistics.getPercentile(50)));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.percentile.10",
+                lStatistics.getPercentile(10)));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.deviation",
+                lStatistics.getStandardDeviation()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.variance",
+                lStatistics.getVariance()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.intercept", 
+                lRegression.getIntercept()));
+
+        statisticSet.addStatistic(
+            new Statistic(
+                "gnviewer.statistics.descriptive.slope",
+                lRegression.getSlope()));
+
+        return statisticSet;
+    }
+}
+// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :
+

http://dive4elements.wald.intevation.org