From 89c66d98f926c71ddd9f08e45b32faed495a7ea3 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Sun, 5 Apr 2020 09:55:08 +0200 Subject: [PATCH] don't render labels in gallery preview --- .../org/lucares/pdb/plot/api/BarChart.java | 2 +- .../pdb/plot/api/BarChartAggregator.java | 27 ++++------------- .../api/BarChartAggregatorForIntervals.java | 29 ++++--------------- .../lucares/pdb/plot/api/BarChartHandler.java | 6 ++-- 4 files changed, 15 insertions(+), 49 deletions(-) diff --git a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChart.java b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChart.java index 133f1ab..a58cdc3 100644 --- a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChart.java +++ b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChart.java @@ -4,7 +4,7 @@ import org.lucares.recommind.logs.GnuplotAxis; public interface BarChart extends IndexedAggregator { - String asCsv(); + String asCsv(boolean renderLabels); String getDataName(); diff --git a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregator.java b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregator.java index 8afc09a..d2132d8 100644 --- a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregator.java +++ b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregator.java @@ -1,30 +1,21 @@ package org.lucares.pdb.plot.api; -import java.io.File; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Path; import java.util.Locale; import java.util.UUID; -import org.lucares.pdb.api.RuntimeIOException; import org.lucares.recommind.logs.GnuplotAxis; public class BarChartAggregator implements CustomAggregator, IndexedAggregator, BarChart { long count = 0; - private final Path tmpDir; - private Long index = null; private Long numberOfDataSeries; private final String dataName = "$data" + UUID.randomUUID().toString().replace("-", ""); - public BarChartAggregator(final Path tmpDir) { + public BarChartAggregator() { super(); - this.tmpDir = tmpDir; } @Override @@ -60,7 +51,7 @@ public class BarChartAggregator implements CustomAggregator, IndexedAggregator, } @Override - public String asCsv() { + public String asCsv(final boolean renderLabels) { final StringBuilder csv = new StringBuilder(); csv.append(getIndex() + 0.5); @@ -73,17 +64,9 @@ public class BarChartAggregator implements CustomAggregator, IndexedAggregator, @Override public AggregatedData getAggregatedData() { - try { - final File dataFile = File.createTempFile("bar", ".dat", tmpDir.toFile()); - - final String csv = asCsv(); - - Files.writeString(dataFile.toPath(), csv, StandardCharsets.UTF_8); - final AggregatedData result = new AggregatedData("label", dataFile); - return result; - } catch (final IOException e) { - throw new RuntimeIOException(e); - } + // not needed - usually this method is used to write the data to file, but bar + // charts use inline data + return null; } @Override diff --git a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregatorForIntervals.java b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregatorForIntervals.java index 7caa2bb..11b8f58 100644 --- a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregatorForIntervals.java +++ b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartAggregatorForIntervals.java @@ -1,10 +1,5 @@ package org.lucares.pdb.plot.api; -import java.io.File; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Path; import java.util.Locale; import java.util.Map; import java.util.SortedSet; @@ -12,15 +7,12 @@ import java.util.TreeSet; import java.util.UUID; import java.util.concurrent.atomic.AtomicLong; -import org.lucares.pdb.api.RuntimeIOException; import org.lucares.recommind.logs.GnuplotAxis; public class BarChartAggregatorForIntervals implements CustomAggregator, IndexedAggregator, BarChart { private static final double SPACE_BETWEEN_BARS = 0.6; - private final Path tmpDir; - private Long index = null; private Long numberOfDataSeries; @@ -32,8 +24,7 @@ public class BarChartAggregatorForIntervals implements CustomAggregator, Indexed private int count; - public BarChartAggregatorForIntervals(final Path tmpDir, final Interval interval) { - this.tmpDir = tmpDir; + public BarChartAggregatorForIntervals(final Interval interval) { this.interval = interval; buckets = interval.getBuckets(); } @@ -77,7 +68,7 @@ public class BarChartAggregatorForIntervals implements CustomAggregator, Indexed } @Override - public String asCsv() { + public String asCsv(final boolean renderLabels) { final StringBuilder csv = new StringBuilder(); final boolean isMiddleSeries = getIndex() == numberOfDataSeries / 2; @@ -86,7 +77,7 @@ public class BarChartAggregatorForIntervals implements CustomAggregator, Indexed final long count = buckets.get(bucketId).get(); csv.append(offset + getIndex() * SPACE_BETWEEN_BARS + 0.5); csv.append(","); - csv.append(isMiddleSeries ? bucketId : ""); + csv.append(renderLabels && isMiddleSeries ? bucketId : ""); csv.append(","); csv.append(count); csv.append("\n"); @@ -102,17 +93,9 @@ public class BarChartAggregatorForIntervals implements CustomAggregator, Indexed @Override public AggregatedData getAggregatedData() { - try { - final File dataFile = File.createTempFile("bar", ".dat", tmpDir.toFile()); - - final String csv = asCsv(); - - Files.writeString(dataFile.toPath(), csv, StandardCharsets.UTF_8); - final AggregatedData result = new AggregatedData("label", dataFile); - return result; - } catch (final IOException e) { - throw new RuntimeIOException(e); - } + // not needed - usually this method is used to write the data to file, but bar + // charts use inline data + return null; } @Override diff --git a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartHandler.java b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartHandler.java index 4667e3a..17ec8ec 100644 --- a/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartHandler.java +++ b/pdb-plotting/src/main/java/org/lucares/pdb/plot/api/BarChartHandler.java @@ -62,7 +62,7 @@ public class BarChartHandler extends AggregateHandler { final BarChart barAggregator = (BarChart) aggregator; appendfln(result, "%s <