Class PeriodAnalysisComponentFactory

java.lang.Object
org.aavso.tools.vstar.plugin.period.PeriodAnalysisComponentFactory

public class PeriodAnalysisComponentFactory extends Object
This factory class creates GUI components (e.g. charts and tables) suitable for returning from the PeriodAnalysisDialogBase.createContent() method that must be overridden by period analysis plug-in subclasses.
  • Constructor Details

    • PeriodAnalysisComponentFactory

      public PeriodAnalysisComponentFactory()
  • Method Details

    • createLinePlot

      public static PeriodAnalysis2DChartPane createLinePlot(String title, String subtitle, Map<PeriodAnalysisCoordinateType,List<Double>> analysisValues, PeriodAnalysisCoordinateType domainType, PeriodAnalysisCoordinateType rangeType, boolean permitLogarithmic, boolean isLogarithmic)

      Create a line plot given lists of domain and range values.

      The component sends and receives period analysis selection messages.

      Parameters:
      title - The main title of the plot.
      subtitle - The subtitle of the plot.
      analysisValues - A mapping from period analysis coordinate type to lists of values.
      domainType - The domain coordinate type.
      rangeType - The range coordinate type.
      permitLogarithmic - Should it be possible to toggle the plot between a normal and logarithmic range?
      isLogarithmic - Should range values be logarithmic by default?
      Returns:
      A GUI line plot component.
      See Also:
    • createScatterPlot

      public static PeriodAnalysis2DChartPane createScatterPlot(String title, String subtitle, PeriodAnalysis2DPlotModel model, boolean permitLogarithmic)

      Create a scatter plot given a 2D plot model.

      The component sends and receives period analysis selection messages.

      Parameters:
      title - The main title of the plot.
      subtitle - The subtitle of the plot.
      model - A 2D plot model.
      permitLogarithmic - Should it be possible to toggle the plot between a normal and logarithmic range?
      Returns:
      A GUI line plot component.
      See Also:
    • createLineAndScatterPlot

      public static PeriodAnalysis2DChartPane createLineAndScatterPlot(String title, String subtitle, PeriodAnalysis2DPlotModel model, boolean permitLogarithmic)

      Create a combined line and scatter plot given a 2D plot model.

      The component sends and receives period analysis selection messages.

      Parameters:
      title - The main title of the plot.
      subtitle - The subtitle of the plot.
      model - A 2D plot model.
      permitLogarithmic - Should it be possible to toggle the plot between a normal and logarithmic range?
      Returns:
      A GUI line plot component.
      See Also:
    • createLinePlot

      public static PeriodAnalysis2DChartPane createLinePlot(String title, String subtitle, PeriodAnalysis2DPlotModel model, boolean permitLogarithmic)

      Create a combined line and scatter plot given a 2D plot model.

      The component sends and receives period analysis selection messages.

      Parameters:
      title - The main title of the plot.
      subtitle - The subtitle of the plot.
      model - A 2D plot model.
      permitLogarithmic - Should it be possible to toggle the plot between a normal and logarithmic range?
      Returns:
      A GUI line plot component.
      See Also:
    • createDataTable

      public static PeriodAnalysisDataTablePane createDataTable(PeriodAnalysisCoordinateType[] columnTypes, double[][] dataArrays, IPeriodAnalysisAlgorithm algorithm)

      Create a data table given column type and data arrays.

      The component sends and receives period analysis selection messages.

      Parameters:
      columnTypes - An array of column types as they are to appear in the table.
      dataArrays - An array of data arrays, where each data array corresponds to each element in the columnTypes array.
      algorithm - The period analysis algorithm.
      Returns:
      A GUI data table component.
    • createDataTable

      Create a data table given column type array and data list.

      The component sends and receives period analysis selection messages.

      Parameters:
      columnTypes - An array of column types as they are to appear in the table.
      dataMap - A mapping from coordinate type to lists of data values.
      algorithm - The period analysis algorithm.
      Returns:
      A GUI data table component.