diff --git a/xchart-demo/src/main/java/com/xeiam/xchart/standalone/RealtimeAttempt.java b/xchart-demo/src/main/java/com/xeiam/xchart/standalone/RealtimeAttempt.java index 884ec7926968465fd60a1301d910c26744127f5b..668fbdb62dc3ea456a6e9452fdff30af0b8c8f07 100644 --- a/xchart-demo/src/main/java/com/xeiam/xchart/standalone/RealtimeAttempt.java +++ b/xchart-demo/src/main/java/com/xeiam/xchart/standalone/RealtimeAttempt.java @@ -16,7 +16,7 @@ package com.xeiam.xchart.standalone; import java.util.ArrayList; -import java.util.Collection; +import java.util.List; import java.util.Timer; import java.util.TimerTask; @@ -77,7 +77,7 @@ public class RealtimeAttempt { public void buildPanel() { - Collection<Number> yData = getRandomData(5); + List<Double> yData = getRandomData(5); // Create Chart chart = new Chart(500, 400); @@ -93,13 +93,13 @@ public class RealtimeAttempt { public void updateData() { // Get some new data - Collection<Number> newData = getRandomData(1); + List<Double> newData = getRandomData(1); // Replace the existing - ArrayList<Number> replacementData = new ArrayList<Number>(); + List<Double> replacementData = new ArrayList<Double>(); Series oldSeries = (Series) chart.getSeriesMap().values().toArray()[0]; - Collection<Number> oldData = oldSeries.getYData(); + List<Double> oldData = (List<Double>) oldSeries.getYData(); replacementData.addAll(oldData); replacementData.addAll(newData); @@ -132,9 +132,9 @@ public class RealtimeAttempt { return chartPanel; } - private static Collection<Number> getRandomData(int numPoints) { + private static List<Double> getRandomData(int numPoints) { - ArrayList<Number> data = new ArrayList<Number>(); + List<Double> data = new ArrayList<Double>(); for (int i = 0; i < numPoints; i++) { data.add(Math.random() * 100); } diff --git a/xchart/src/main/java/com/xeiam/xchart/CSVExporter.java b/xchart/src/main/java/com/xeiam/xchart/CSVExporter.java index 6e9a366ecb334a44e694dd689ad9ecd258b259c2..4d29b4e91d6efe98fc1c13fd9ad22704b414ab15 100644 --- a/xchart/src/main/java/com/xeiam/xchart/CSVExporter.java +++ b/xchart/src/main/java/com/xeiam/xchart/CSVExporter.java @@ -82,11 +82,11 @@ public class CSVExporter { out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(newFile), "UTF8")); Collection<?> xData = series.getXData(); - Collection<Number> yData = series.getYData(); - Collection<Number> errorBarData = series.getErrorBars(); + Collection<? extends Number> yData = series.getYData(); + Collection<? extends Number> errorBarData = series.getErrorBars(); Iterator<?> itrx = xData.iterator(); - Iterator<Number> itry = yData.iterator(); - Iterator<Number> itrErrorBar = null; + Iterator<? extends Number> itry = yData.iterator(); + Iterator<? extends Number> itrErrorBar = null; if (errorBarData != null) { itrErrorBar = errorBarData.iterator(); } diff --git a/xchart/src/main/java/com/xeiam/xchart/Chart.java b/xchart/src/main/java/com/xeiam/xchart/Chart.java index ebac129ef2892a1bd6f9d888be9453a0da9cd4bd..3b250946144c2a103e0e318d97b93e5a862881d8 100644 --- a/xchart/src/main/java/com/xeiam/xchart/Chart.java +++ b/xchart/src/main/java/com/xeiam/xchart/Chart.java @@ -151,7 +151,7 @@ public class Chart { * @param yData the Y-Axis data * @return A Series object that you can set properties on */ - public Series addSeries(String seriesName, Collection<Number> xData, Collection<Number> yData) { + public Series addSeries(String seriesName, Collection<? extends Number> xData, Collection<? extends Number> yData) { return chartPainter.getAxisPair().addSeries(seriesName, xData, yData, null); } @@ -165,7 +165,7 @@ public class Chart { * @param errorBars the error bar data * @return A Series object that you can set properties on */ - public Series addSeries(String seriesName, Collection<Number> xData, Collection<Number> yData, Collection<Number> errorBars) { + public Series addSeries(String seriesName, Collection<? extends Number> xData, Collection<? extends Number> yData, Collection<? extends Number> errorBars) { return chartPainter.getAxisPair().addSeries(seriesName, xData, yData, errorBars); } diff --git a/xchart/src/main/java/com/xeiam/xchart/Series.java b/xchart/src/main/java/com/xeiam/xchart/Series.java index 96b01b3cce2ec85ede4cc4589d9020f03db34fb0..5748e2732cc347816f3a7b3b5ccaa5cf396dec5a 100644 --- a/xchart/src/main/java/com/xeiam/xchart/Series.java +++ b/xchart/src/main/java/com/xeiam/xchart/Series.java @@ -39,10 +39,10 @@ public class Series { private Collection<?> xData; private AxisType xAxisType; - private Collection<Number> yData; + private Collection<? extends Number> yData; private AxisType yAxisType; - private Collection<Number> errorBars; + private Collection<? extends Number> errorBars; /** the minimum value of axis range */ private BigDecimal xMin; @@ -79,7 +79,8 @@ public class Series { * @param errorBars * @param seriesColorMarkerLineStyle */ - public Series(String name, Collection<?> xData, AxisType xAxisType, Collection<Number> yData, AxisType yAxisType, Collection<Number> errorBars, SeriesColorMarkerLineStyle seriesColorMarkerLineStyle) { + public Series(String name, Collection<?> xData, AxisType xAxisType, Collection<? extends Number> yData, AxisType yAxisType, Collection<? extends Number> errorBars, + SeriesColorMarkerLineStyle seriesColorMarkerLineStyle) { if (name == null || name.length() < 1) { throw new IllegalArgumentException("Series name cannot be null or zero-length!!!"); @@ -147,13 +148,13 @@ public class Series { * @param data * @return */ - private BigDecimal[] findMinMaxWithErrorBars(Collection<Number> data, Collection<Number> errorBars) { + private BigDecimal[] findMinMaxWithErrorBars(Collection<? extends Number> data, Collection<? extends Number> errorBars) { BigDecimal min = null; BigDecimal max = null; - Iterator<Number> itr = data.iterator(); - Iterator<Number> ebItr = errorBars.iterator(); + Iterator<? extends Number> itr = data.iterator(); + Iterator<? extends Number> ebItr = errorBars.iterator(); while (itr.hasNext()) { BigDecimal bigDecimal = new BigDecimal(itr.next().doubleValue()); BigDecimal eb = new BigDecimal(ebItr.next().doubleValue()); @@ -249,12 +250,12 @@ public class Series { return xData; } - public Collection<Number> getYData() { + public Collection<? extends Number> getYData() { return yData; } - public Collection<Number> getErrorBars() { + public Collection<? extends Number> getErrorBars() { return errorBars; } diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisPair.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisPair.java index f062b68ce63d5759b207ea0fbd66bc3266b0ac67..99535e46576bc5127fb2a54f70654975d09b9b3d 100644 --- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisPair.java +++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisPair.java @@ -62,7 +62,7 @@ public class AxisPair implements ChartPart { * @param xData * @param yData */ - public <T> Series addSeries(String seriesName, Collection<T> xData, Collection<Number> yData, Collection<Number> errorBars) { + public <T> Series addSeries(String seriesName, Collection<T> xData, Collection<? extends Number> yData, Collection<? extends Number> errorBars) { // Sanity checks if (seriesName == null) { diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentBarChart.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentBarChart.java index dd4961b2419aee172d73c895da1fd3c289284a7a..acd946c23f7f1d2b6103ad6837a1fe3ed1ec32fe 100644 --- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentBarChart.java +++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentBarChart.java @@ -74,7 +74,7 @@ public class PlotContentBarChart extends PlotContent { // data points Collection<?> xData = series.getXData(); - Collection<Number> yData = series.getYData(); + Collection<? extends Number> yData = series.getYData(); BigDecimal yMin = getChartPainter().getAxisPair().getyAxis().getMin(); BigDecimal yMax = getChartPainter().getAxisPair().getyAxis().getMax(); @@ -121,7 +121,7 @@ public class PlotContentBarChart extends PlotContent { // System.out.println(yMax); Iterator<?> categoryItr = categories.iterator(); - Iterator<Number> yItr = yData.iterator(); + Iterator<? extends Number> yItr = yData.iterator(); int barCounter = 0; while (categoryItr.hasNext()) { diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java index 0f53885616cf74ee676ee7968a1d3afe65a82b7f..33b415236ebef198393ba7296e78d7960c40c2ef 100644 --- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java +++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/PlotContentLineChart.java @@ -65,7 +65,7 @@ public class PlotContentLineChart extends PlotContent { BigDecimal xMin = getChartPainter().getAxisPair().getxAxis().getMin(); BigDecimal xMax = getChartPainter().getAxisPair().getxAxis().getMax(); - Collection<Number> yData = series.getYData(); + Collection<? extends Number> yData = series.getYData(); BigDecimal yMin = getChartPainter().getAxisPair().getyAxis().getMin(); BigDecimal yMax = getChartPainter().getAxisPair().getyAxis().getMax(); @@ -92,14 +92,14 @@ public class PlotContentLineChart extends PlotContent { yMin = new BigDecimal(Math.log10(yMin.doubleValue())); yMax = new BigDecimal(Math.log10(yMax.doubleValue())); } - Collection<Number> errorBars = series.getErrorBars(); + Collection<? extends Number> errorBars = series.getErrorBars(); double previousX = Integer.MIN_VALUE; double previousY = Integer.MIN_VALUE; Iterator<?> xItr = xData.iterator(); - Iterator<Number> yItr = yData.iterator(); - Iterator<Number> ebItr = null; + Iterator<? extends Number> yItr = yData.iterator(); + Iterator<? extends Number> ebItr = null; if (errorBars != null) { ebItr = errorBars.iterator(); }