Class SimplePlot

  • All Implemented Interfaces:
    AdditionalInformationHandler, ClassCrossReference, CleanUpHandler, CrossReference, Destroyable, GlobalInfoSupporter, FileWriter, LoggingLevelHandler, LoggingSupporter, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<Actor>, SizeOfHandler, Stoppable, StoppableWithFeedback, TextSupporter, VariablesInspectionHandler, VariableChangeListener, Actor, ClearableDisplay, DataPlotUpdaterSupporter<AbstractPlotUpdater>, DisplayTypeSupporter, ErrorHandler, InputConsumer, ComponentSupplier, DisplayPanelProvider, TextSupplier, MenuBarProvider, SendToActionSupporter, ColorProviderHandler, Serializable, Comparable

    public class SimplePlot
    extends AbstractGraphicalDisplay
    implements DisplayPanelProvider, FileWriter, ClassCrossReference, TextSupplier, DataPlotUpdaterSupporter<AbstractPlotUpdater>, ColorProviderHandler
    Actor for generating simple plots.

    See also:
    adams.flow.sink.SequencePlotter

    Input/output:
    - accepts:
       adams.flow.container.SequencePlotterContainer
       adams.flow.container.SequencePlotterContainer[]


    Container information:
    - adams.flow.container.SequencePlotterContainer: PlotName, X, Y, Content type, Error X, Error Y, MetaData

    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -name <java.lang.String> (property: name)
        The name of the actor.
        default: SimplePlot
     
    -annotation <adams.core.base.BaseAnnotation> (property: annotations)
        The annotations to attach to this actor.
        default:
     
    -skip <boolean> (property: skip)
        If set to true, transformation is skipped and the input token is just forwarded
        as it is.
        default: false
     
    -stop-flow-on-error <boolean> (property: stopFlowOnError)
        If set to true, the flow execution at this level gets stopped in case this
        actor encounters an error; the error gets propagated; useful for critical
        actors.
        default: false
     
    -silent <boolean> (property: silent)
        If enabled, then no errors are output in the console; Note: the enclosing
        actor handler must have this enabled as well.
        default: false
     
    -short-title <boolean> (property: shortTitle)
        If enabled uses just the name for the title instead of the actor's full
        name.
        default: false
     
    -display-type <adams.flow.core.displaytype.AbstractDisplayType> (property: displayType)
        Determines how to show the display, eg as standalone frame (default) or
        in the Flow editor window.
        default: adams.flow.core.displaytype.Default
     
    -width <int> (property: width)
        The width of the dialog.
        default: 800
        minimum: -1
     
    -height <int> (property: height)
        The height of the dialog.
        default: 350
        minimum: -1
     
    -x <int> (property: x)
        The X position of the dialog (>=0: absolute, -1: left, -2: center, -3: right
        ).
        default: -1
        minimum: -3
     
    -y <int> (property: y)
        The Y position of the dialog (>=0: absolute, -1: top, -2: center, -3: bottom
        ).
        default: -1
        minimum: -3
     
    -writer <adams.gui.print.JComponentWriter> (property: writer)
        The writer to use for generating the graphics output.
        default: adams.gui.print.NullWriter
     
    -paintlet <adams.gui.visualization.sequence.XYSequencePaintlet> (property: paintlet)
        The paintlet to use for painting the data.
        default: adams.gui.visualization.sequence.CirclePaintlet -meta-data-color adams.gui.visualization.sequence.metadatacolor.Dummy
     
    -overlay-paintlet <adams.gui.visualization.sequence.XYSequencePaintlet> (property: overlayPaintlet)
        The paintlet to use for painting the overlay data (if any).
        default: adams.gui.visualization.sequence.NullPaintlet
     
    -mouse-click-action <adams.flow.sink.sequenceplotter.MouseClickAction> (property: mouseClickAction)
        The action to use for mouse clicks on the canvas.
        default: adams.flow.sink.sequenceplotter.NullClickAction
     
    -color-provider <adams.gui.visualization.core.ColorProvider> (property: colorProvider)
        The color provider in use for generating the colors for the various plots.
        default: adams.gui.visualization.core.DefaultColorProvider
     
    -title <java.lang.String> (property: title)
        The title for the border around the plot.
        default: Plot
     
    -axis-x <adams.gui.visualization.core.AxisPanelOptions> (property: axisX)
        The setup for the X axis.
        default: adams.gui.visualization.core.AxisPanelOptions -label x -tick-generator \"adams.gui.visualization.core.axis.FancyTickGenerator -num-ticks 20\" -nth-value 2 -width 40 -custom-format 0.0
     
    -axis-y <adams.gui.visualization.core.AxisPanelOptions> (property: axisY)
        The setup for the Y axis.
        default: adams.gui.visualization.core.AxisPanelOptions -label y -tick-generator adams.gui.visualization.core.axis.FancyTickGenerator -nth-value 2 -width 60 -custom-format 0.0
     
    -show-side-panel <boolean> (property: showSidePanel)
        If enabled, the side panel with the plot names is visible.
        default: true
     
    -no-tool-tips <boolean> (property: noToolTips)
        If enabled, the tool tips of the plot get suppressed.
        default: false
     
    -output <adams.core.io.PlaceholderFile> (property: outputFile)
        The file to write the plot containers to (in CSV format); does not store
        the meta-data, as it can change from container to container; ignored if
        pointing to a directory.
        default: ${CWD}
     
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_Paintlet

        protected XYSequencePaintlet m_Paintlet
        the paintlet to use for painting the XY data.
      • m_OverlayPaintlet

        protected XYSequencePaintlet m_OverlayPaintlet
        the overlay paintlet to use for painting the overlays.
      • m_ColorProvider

        protected ColorProvider m_ColorProvider
        the color provider to use.
      • m_MouseClickAction

        protected MouseClickAction m_MouseClickAction
        the mouse click action.
      • m_Title

        protected String m_Title
        the title.
      • m_Counter

        protected NamedCounter m_Counter
        for keeping track of the tokens.
      • m_ShowSidePanel

        protected boolean m_ShowSidePanel
        whether to show the side panel.
      • m_NoToolTips

        protected boolean m_NoToolTips
        whether to suppress the tooltips.
      • m_OutputFile

        protected PlaceholderFile m_OutputFile
        the file to save the plot containers to.
      • m_UseOutputFile

        protected Boolean m_UseOutputFile
        whether to use an output file.
    • Constructor Detail

      • SimplePlot

        public SimplePlot()
    • Method Detail

      • getDefaultWidth

        protected int getDefaultWidth()
        Returns the default width for the dialog.
        Overrides:
        getDefaultWidth in class AbstractDisplay
        Returns:
        the default width
      • getDefaultHeight

        protected int getDefaultHeight()
        Returns the default height for the dialog.
        Overrides:
        getDefaultHeight in class AbstractDisplay
        Returns:
        the default height
      • setPaintlet

        public void setPaintlet​(XYSequencePaintlet value)
        Sets the paintlet to use.
        Parameters:
        value - the paintlet
      • getPaintlet

        public XYSequencePaintlet getPaintlet()
        Returns the paintlet to use.
        Returns:
        the paintlet
      • paintletTipText

        public String paintletTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setOverlayPaintlet

        public void setOverlayPaintlet​(XYSequencePaintlet value)
        Sets the overlay paintlet to use.
        Parameters:
        value - the paintlet
      • getOverlayPaintlet

        public XYSequencePaintlet getOverlayPaintlet()
        Returns the overlay paintlet to use.
        Returns:
        the paintlet
      • overlayPaintletTipText

        public String overlayPaintletTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setMouseClickAction

        public void setMouseClickAction​(MouseClickAction value)
        Sets the mouse click action to use.
        Parameters:
        value - the action
      • getMouseClickAction

        public MouseClickAction getMouseClickAction()
        Returns the current mouse click action in use.
        Returns:
        the action
      • mouseClickActionTipText

        public String mouseClickActionTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • colorProviderTipText

        public String colorProviderTipText()
        Returns the tip text for this property.
        Specified by:
        colorProviderTipText in interface ColorProviderHandler
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • getDefaultAxisX

        protected AxisPanelOptions getDefaultAxisX()
        Returns the setup for the X axis.
        Returns:
        the setup
      • getDefaultAxisY

        protected AxisPanelOptions getDefaultAxisY()
        Returns the setup for the Y axis.
        Returns:
        the setup
      • setAxisX

        public void setAxisX​(AxisPanelOptions value)
        Sets the setup for the X axis.
        Parameters:
        value - the setup
      • getAxisX

        public AxisPanelOptions getAxisX()
        Returns the setup for the X axis.
        Returns:
        the setup
      • axisXTipText

        public String axisXTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setAxisY

        public void setAxisY​(AxisPanelOptions value)
        Sets the setup for the Y axis.
        Parameters:
        value - the setup
      • getAxisY

        public AxisPanelOptions getAxisY()
        Returns the setup for the Y axis.
        Returns:
        the setup
      • axisYTipText

        public String axisYTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setTitle

        public void setTitle​(String value)
        Sets the title for border around the plot.
        Parameters:
        value - the title
      • getTitle

        public String getTitle()
        Returns the title for border around the plot.
        Returns:
        the title
      • titleTipText

        public String titleTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setShowSidePanel

        public void setShowSidePanel​(boolean value)
        Sets whether to show the side panel with the plot names.
        Parameters:
        value - true if to show
      • getShowSidePanel

        public boolean getShowSidePanel()
        Returns whether to show the side panel with the plot names.
        Returns:
        true if to show
      • showSidePanelTipText

        public String showSidePanelTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setNoToolTips

        public void setNoToolTips​(boolean value)
        Sets whether to suppress the plot tool tips.
        Parameters:
        value - true if to suppress
      • getNoToolTips

        public boolean getNoToolTips()
        Returns whether to suppress the plot tool tips.
        Returns:
        true if to suppress
      • noToolTipsTipText

        public String noToolTipsTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • getDefaultOutputFile

        protected PlaceholderFile getDefaultOutputFile()
        Returns the default output file.
        Returns:
        the file
      • outputFileTipText

        public String outputFileTipText()
        Returns the tip text for this property.
        Specified by:
        outputFileTipText in interface FileWriter
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • accepts

        public Class[] accepts()
        Returns the class that the consumer accepts.
        Specified by:
        accepts in interface InputConsumer
        Returns:
        adams.flow.container.SequencePlotterContainer.class, adams.flow.container.SequencePlotterContainer[].class
      • writePlotContainer

        protected boolean writePlotContainer​(String name,
                                             SequencePlotterContainer.ContentType type,
                                             Comparable x,
                                             Comparable y,
                                             double dX,
                                             double dY,
                                             Double[] errorX,
                                             Double[] errorY)
        Writes the plot container to the output file.
        Parameters:
        name - the name of the plot
        type - the type of plot
        x - the X value
        y - the Y value
        dX - the numerix X value
        dY - the numeric Y value
        errorX - the X error(s)
        errorY - the Y error(s)
        Returns:
        true if successfully written
      • display

        protected void display​(Token token)
        Displays the token (the panel and dialog have already been created at this stage).
        Specified by:
        display in class AbstractDisplay
        Parameters:
        token - the token to display
      • supplyText

        public String supplyText()
        Supplies the text. May get called even if actor hasn't been executed yet.
        Specified by:
        supplyText in interface TextSupplier
        Specified by:
        supplyText in interface TextSupporter
        Returns:
        the text, null if none available
      • displayPanelRequiresScrollPane

        public boolean displayPanelRequiresScrollPane()
        Returns whether the created display panel requires a scroll pane or not.
        Specified by:
        displayPanelRequiresScrollPane in interface DisplayPanelProvider
        Returns:
        true if the display panel requires a scroll pane