Class LinearFitPlotter

  • All Implemented Interfaces:
    Plotter<LineStyle>

    public class LinearFitPlotter
    extends AbstractPlotter<LineStyle>
    Fits a set of 2-d points to a linear equation, and plots the line.
    Since:
    8 Dec 2014
    Author:
    Mark Taylor
    • Field Detail

      • COEFFS_KEY

        public static final ReportKey<double[]> COEFFS_KEY
        Report key for coefficients of linear fit (2 element array (c, m)).
      • EQUATION_KEY

        public static final ReportKey<java.lang.String> EQUATION_KEY
        Report key for text of linear fit equation.
      • CORRELATION_KEY

        public static final ReportKey<java.lang.Double> CORRELATION_KEY
        Report key for product moment correlation coefficient.
      • RMSD_KEY

        public static final ReportKey<java.lang.Double> RMSD_KEY
        Report key for RMS deviation from fitted line.
    • Constructor Detail

      • LinearFitPlotter

        public LinearFitPlotter​(boolean hasWeights)
        Constructor.
        Parameters:
        hasWeights - true if points may be weighted
    • Method Detail

      • getPlotterDescription

        public java.lang.String getPlotterDescription()
        Description copied from interface: Plotter
        Returns an XML description of this plotter.

        Note: really this should appear at the LayerType level.

        Returns:
        one or more <p> elements
      • createLayer

        public PlotLayer createLayer​(DataGeom geom,
                                     DataSpec dataSpec,
                                     LineStyle style)
        Description copied from interface: Plotter
        Creates a PlotLayer based on the given geometry, data and style.

        The style parameter is the result of a call to Plotter.createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap).

        The dataSpec parameter must contain the coordinates defined by this plotter's CoordGroup.

        The pointDataGeom parameter is only used if getCoordGroup(). getPositionCount returns a non-zero value, otherwise the plot does not have point positions.

        It is legal to supply null for any of the parameters; if insufficient data is supplied to generate a plot, then the method should return null.

        Creating a layer should be cheap; layers may be created and not used.

        Parameters:
        geom - indicates base position coordinates and their mapping to points in the data space; if non-null, the data geom's DataGeom.hasPosition() method will return true
        dataSpec - specifies the data required for the plot
        style - data style as obtained from createStyle
        Returns:
        new plot layer, or null if no drawing will take place