add percentile information if available

This commit is contained in:
2021-04-02 18:29:18 +02:00
parent f56744eb6b
commit a1b4c7006d
15 changed files with 322 additions and 168 deletions

View File

@@ -8,6 +8,7 @@ import java.util.Map;
import org.lucares.pdb.plot.api.AggregatorCollection;
import org.lucares.pdb.plot.api.Limit;
import org.lucares.pdb.plot.api.Percentiles;
public interface DataSeries {
public static final Comparator<? super DataSeries> BY_NUMBER_OF_VALUES = (a, b) -> {
@@ -35,6 +36,8 @@ public interface DataSeries {
public double getAverage();
public Percentiles getPercentiles();
public void setStyle(LineStyle style);
public LineStyle getStyle();
@@ -114,5 +117,4 @@ public interface DataSeries {
return result;
}
}

View File

@@ -1,6 +1,8 @@
package org.lucares.recommind.logs;
import org.lucares.pdb.plot.api.AggregatorCollection;
import org.lucares.pdb.plot.api.CumulativeDistributionCustomAggregator;
import org.lucares.pdb.plot.api.Percentiles;
public class FileBackedDataSeries implements DataSeries {
@@ -55,11 +57,19 @@ public class FileBackedDataSeries implements DataSeries {
@Override
public double getAverage() {
return csvSummary.getStatsAverage();
return Math.round(csvSummary.getStatsAverage() * 10.0) / 10.0;
}
@Override
public AggregatorCollection getAggregators() {
return csvSummary.getAggregators();
}
@Override
public Percentiles getPercentiles() {
return csvSummary.getAggregators()//
.getAggregator(CumulativeDistributionCustomAggregator.class)//
.map(CumulativeDistributionCustomAggregator::getPercentiles)//
.orElse(new Percentiles());
}
}