List of usage examples for org.jfree.data.general DatasetUtilities sampleFunction2DToSeries
public static XYSeries sampleFunction2DToSeries(Function2D f, double start, double end, int samples, Comparable seriesKey)
From source file:org.jfree.chart.demo.NormalDistributionDemo2.java
public static XYDataset createDataset() { XYSeriesCollection xyseriescollection = new XYSeriesCollection(); NormalDistributionFunction2D normaldistributionfunction2d = new NormalDistributionFunction2D(0.0D, 1.0D); org.jfree.data.xy.XYSeries xyseries = DatasetUtilities.sampleFunction2DToSeries( normaldistributionfunction2d, -5.0999999999999996D, 5.0999999999999996D, 121, "N1"); xyseriescollection.addSeries(xyseries); NormalDistributionFunction2D normaldistributionfunction2d1 = new NormalDistributionFunction2D(0.0D, Math.sqrt(0.20000000000000001D)); org.jfree.data.xy.XYSeries xyseries1 = DatasetUtilities.sampleFunction2DToSeries( normaldistributionfunction2d1, -5.0999999999999996D, 5.0999999999999996D, 121, "N2"); xyseriescollection.addSeries(xyseries1); NormalDistributionFunction2D normaldistributionfunction2d2 = new NormalDistributionFunction2D(0.0D, Math.sqrt(5D));//from w w w . ja va 2 s. c om org.jfree.data.xy.XYSeries xyseries2 = DatasetUtilities.sampleFunction2DToSeries( normaldistributionfunction2d2, -5.0999999999999996D, 5.0999999999999996D, 121, "N3"); xyseriescollection.addSeries(xyseries2); NormalDistributionFunction2D normaldistributionfunction2d3 = new NormalDistributionFunction2D(-2D, Math.sqrt(0.5D)); org.jfree.data.xy.XYSeries xyseries3 = DatasetUtilities.sampleFunction2DToSeries( normaldistributionfunction2d3, -5.0999999999999996D, 5.0999999999999996D, 121, "N4"); xyseriescollection.addSeries(xyseries3); return xyseriescollection; }
From source file:org.encog.workbench.dialogs.activation.EquationPanel.java
/** * Creates a dataset with sample values from the normal distribution * function./*from w w w .j av a 2s.co m*/ * * @return A dataset. */ public static XYDataset createDataset(ActivationFunction activation, boolean normal) { XYSeriesCollection dataset = new XYSeriesCollection(); if (normal) { Function2D n1 = new ActivationFunction2D(activation);// //new NormalDistributionFunction2D(0.0, 1.0); XYSeries s1 = DatasetUtilities.sampleFunction2DToSeries(n1, -5.1, 5.1, 121, "Activation Function"); dataset.addSeries(s1); } else { if (activation.hasDerivative()) { Function2D n2 = new DerivativeFunction2D(activation); XYSeries s2 = DatasetUtilities.sampleFunction2DToSeries(n2, -5.1, 5.1, 121, "Derivative Function"); dataset.addSeries(s2); } } return dataset; }
From source file:org.encog.workbench.tabs.rbf.RadialBasisFunctionsTab.java
public XYDataset createDataset() { String title = rbf.getClass().getSimpleName(); XYSeriesCollection dataset = new XYSeriesCollection(); Function2D n1 = new RBFFunction2D(this.rbf);// //new NormalDistributionFunction2D(0.0, 1.0); XYSeries s1 = DatasetUtilities.sampleFunction2DToSeries(n1, -5.1, 5.1, 121, title); dataset.addSeries(s1);/* w w w. j a v a2 s .c o m*/ return dataset; }
From source file:org.esa.snap.rcp.statistics.ScatterPlotPanel.java
private XYIntervalSeries computeRegressionData(double xStart, double xEnd) { if (scatterpointsDataset.getItemCount(0) > 1) { final double[] coefficients = Regression.getOLSRegression(scatterpointsDataset, 0); final Function2D curve = new LineFunction2D(coefficients[0], coefficients[1]); final XYSeries regressionData = DatasetUtilities.sampleFunction2DToSeries(curve, xStart, xEnd, 100, "regression line"); final XYIntervalSeries xyIntervalRegression = new XYIntervalSeries(regressionData.getKey()); for (int i = 0; i < regressionData.getItemCount(); i++) { XYDataItem item = regressionData.getDataItem(i); final double x = item.getXValue(); final double y = item.getYValue(); xyIntervalRegression.add(x, x, x, y, y, y); }//from w w w .java 2s . co m return xyIntervalRegression; } else { JOptionPane.showMessageDialog(this, "Unable to compute regression line.\n" + "At least 2 values are needed to compute regression coefficients."); return null; } }
From source file:org.esa.beam.visat.toolviews.stat.ScatterPlotPanel.java
private XYIntervalSeries computeRegressionData(double xStart, double xEnd) { if (scatterpointsDataset.getItemCount(0) > 1) { final double[] coefficients = Regression.getOLSRegression(scatterpointsDataset, 0); final Function2D curve = new LineFunction2D(coefficients[0], coefficients[1]); final XYSeries regressionData = DatasetUtilities.sampleFunction2DToSeries(curve, xStart, xEnd, 100, "regression line"); final XYIntervalSeries xyIntervalRegression = new XYIntervalSeries(regressionData.getKey()); final List<XYDataItem> regressionDataItems = regressionData.getItems(); for (XYDataItem item : regressionDataItems) { final double x = item.getXValue(); final double y = item.getYValue(); xyIntervalRegression.add(x, x, x, y, y, y); }//from www . ja v a 2 s.c o m return xyIntervalRegression; } else { JOptionPane.showMessageDialog(this, "Unable to compute regression line.\n" + "At least 2 values are needed to compute regression coefficients."); return null; } }
From source file:org.esa.snap.rcp.statistics.ScatterPlotPanel.java
private XYIntervalSeries computeAcceptableDeviationData(double lowerBound, double upperBound) { final XYSeries identity = DatasetUtilities.sampleFunction2DToSeries(x -> x, lowerBound, upperBound, 100, "1:1 line"); final XYIntervalSeries xyIntervalSeries = new XYIntervalSeries(identity.getKey()); for (int i = 0; i < identity.getItemCount(); i++) { XYDataItem item = identity.getDataItem(i); final double x = item.getXValue(); final double y = item.getYValue(); if (scatterPlotModel.showAcceptableDeviation) { final double acceptableDeviation = scatterPlotModel.acceptableDeviationInterval; final double xOff = acceptableDeviation * x / 100; final double yOff = acceptableDeviation * y / 100; xyIntervalSeries.add(x, x - xOff, x + xOff, y, y - yOff, y + yOff); } else {/*w w w . j a va2 s .c om*/ xyIntervalSeries.add(x, x, x, y, y, y); } } return xyIntervalSeries; }
From source file:org.esa.beam.visat.toolviews.stat.ScatterPlotPanel.java
private XYIntervalSeries computeAcceptableDeviationData(double lowerBound, double upperBound) { final Function2D identityFunction = new Function2D() { @Override/*from ww w .j ava2 s. co m*/ public double getValue(double x) { return x; } }; final XYSeries identity = DatasetUtilities.sampleFunction2DToSeries(identityFunction, lowerBound, upperBound, 100, "1:1 line"); final XYIntervalSeries xyIntervalSeries = new XYIntervalSeries(identity.getKey()); final List<XYDataItem> items = identity.getItems(); for (XYDataItem item : items) { final double x = item.getXValue(); final double y = item.getYValue(); if (scatterPlotModel.showAcceptableDeviation) { final double acceptableDeviation = scatterPlotModel.acceptableDeviationInterval; final double xOff = acceptableDeviation * x / 100; final double yOff = acceptableDeviation * y / 100; xyIntervalSeries.add(x, x - xOff, x + xOff, y, y - yOff, y + yOff); } else { xyIntervalSeries.add(x, x, x, y, y, y); } } return xyIntervalSeries; }