From b7aaaf160d3aa153b88abec00d1217817f0994bc Mon Sep 17 00:00:00 2001 From: Alexandre Gobbo Date: Tue, 19 Aug 2014 15:37:08 +0200 Subject: [PATCH] Bug plotting -Infinity --- .../src/main/java/ch/psi/plot/LinePlotSeries.java | 2 +- .../src/main/java/ch/psi/plot/MatrixPlotSeries.java | 13 +++++++------ .../src/main/java/ch/psi/plot/jfree/MatrixPlot.java | 6 +++--- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/ch.psi.plot/src/main/java/ch/psi/plot/LinePlotSeries.java b/ch.psi.plot/src/main/java/ch/psi/plot/LinePlotSeries.java index 30af65b..2c5d10d 100644 --- a/ch.psi.plot/src/main/java/ch/psi/plot/LinePlotSeries.java +++ b/ch.psi.plot/src/main/java/ch/psi/plot/LinePlotSeries.java @@ -7,7 +7,7 @@ import ch.psi.plot.utils.SwingUtils; import java.awt.Color; /** - * + * Data representation for LinePlot. */ public class LinePlotSeries extends PlotSeries { diff --git a/ch.psi.plot/src/main/java/ch/psi/plot/MatrixPlotSeries.java b/ch.psi.plot/src/main/java/ch/psi/plot/MatrixPlotSeries.java index 145f833..3e5bdf7 100644 --- a/ch.psi.plot/src/main/java/ch/psi/plot/MatrixPlotSeries.java +++ b/ch.psi.plot/src/main/java/ch/psi/plot/MatrixPlotSeries.java @@ -4,7 +4,7 @@ import java.util.Arrays; import java.util.logging.Logger; /** - * PlotData implementation optimized for matrix data. + * Data representation for MatrixPlot. */ public class MatrixPlotSeries extends PlotSeries { @@ -144,12 +144,13 @@ public class MatrixPlotSeries extends PlotSeries { double[][] data = getData(); for (int i = 0; i < data.length; i++) { for (int j = 0; j < data[0].length; j++) { - if (data[i][j] != Double.NEGATIVE_INFINITY) { - if (Double.isNaN(min) || (data[i][j] < min)) { - min = data[i][j]; + double val=data[i][j]; + if ((!Double.isNaN(val)) && (!Double.isInfinite(val))) { + if (Double.isNaN(min) || (val < min)) { + min = val; } - if (Double.isNaN(max) || (data[i][j] > max)) { - max = data[i][j]; + if (Double.isNaN(max) || (val > max)) { + max = val; } } } diff --git a/ch.psi.plot/src/main/java/ch/psi/plot/jfree/MatrixPlot.java b/ch.psi.plot/src/main/java/ch/psi/plot/jfree/MatrixPlot.java index fbff4c3..d17b76a 100644 --- a/ch.psi.plot/src/main/java/ch/psi/plot/jfree/MatrixPlot.java +++ b/ch.psi.plot/src/main/java/ch/psi/plot/jfree/MatrixPlot.java @@ -115,9 +115,9 @@ public class MatrixPlot extends MatrixPlotBase { xvalues = new double[arraylength]; yvalues = new double[arraylength]; zvalues = new double[arraylength]; - Arrays.fill(xvalues, Double.NEGATIVE_INFINITY); - Arrays.fill(yvalues, Double.NEGATIVE_INFINITY); - Arrays.fill(zvalues, Double.NEGATIVE_INFINITY); + Arrays.fill(xvalues, Double.NaN); + Arrays.fill(yvalues, Double.NaN); + Arrays.fill(zvalues, Double.NaN); double[][] dataArray = new double[][]{xvalues, yvalues, zvalues}; //Create the XYDataset (org.jfree), not to be confused with the ch.psi dataSet) data = new DefaultXYZDataset();