Package adams.flow.sink
Class TimeseriesDisplay
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ClearableDisplay
,DataPlotUpdaterHandler<AbstractPlotUpdater>
,DataPlotUpdaterSupporter<AbstractPlotUpdater>
,DisplayTypeSupporter
,ErrorHandler
,InputConsumer
,ComponentSupplier
,DisplayPanelProvider
,MenuBarProvider
,SendToActionSupporter
,ColorProviderHandler
,Serializable
,Comparable
public class TimeseriesDisplay extends AbstractGraphicalDisplay implements DisplayPanelProvider, DataPlotUpdaterHandler<AbstractPlotUpdater>, ColorProviderHandler
Actor that displays timeseries.
Input/output:
- accepts:
adams.data.timeseries.Timeseries
-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: TimeseriesDisplay
-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 gets stopped in case this actor encounters an error; useful for critical actors. default: false
-silent <boolean> (property: silent) If enabled, then no errors are output in the console. 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-in-editor <boolean> (property: displayInEditor) If enabled displays the panel in a tab in the flow editor rather than in a separate frame. default: false
-width <int> (property: width) The width of the dialog. default: 1000 minimum: -1
-height <int> (property: height) The height of the dialog. default: 600 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.timeseries.AbstractTimeseriesPaintlet> (property: paintlet) The paintlet to use. default: adams.gui.visualization.timeseries.TimeseriesPaintlet
-axis-x <adams.gui.visualization.timeseries.TimeseriesXAxisPanelOptions> (property: axisX) The setup for the X axis. default: adams.gui.visualization.timeseries.DefaultTimeseriesXAxisPanelOptions -label time -type DATE -tick-generator adams.gui.visualization.core.axis.PeriodicityTickGenerator -width 40
-axis-y <adams.gui.visualization.timeseries.TimeseriesYAxisPanelOptions> (property: axisY) The setup for the Y axis. default: adams.gui.visualization.timeseries.DefaultTimeseriesYAxisPanelOptions -label value -tick-generator adams.gui.visualization.core.axis.FancyTickGenerator -nth-value 2 -width 60 -custom-format 0.0
-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
-show-side-panel <boolean> (property: showSidePanel) If enabled, the side panel with the list of loaded spectra gets displayed. default: true
-zoom-overview <boolean> (property: zoomOverview) If enabled, a zoom overview panel gets displayed as well. default: false
-overlay <adams.gui.visualization.core.Paintlet> [-overlay ...] (property: overlays) The paintlets to use for overlays. default:
-plot-updater <adams.flow.sink.timeseriesdisplay.AbstractPlotUpdater> (property: plotUpdater) The updating strategy for the plot. default: adams.flow.sink.timeseriesdisplay.SimplePlotUpdater
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
TimeseriesDisplay.DisplayPanel
Panel to be used inDisplayPanelManager
sink.
-
Field Summary
Fields Modifier and Type Field Description protected TimeseriesXAxisPanelOptions
m_AxisX
the options for the X axis.protected TimeseriesYAxisPanelOptions
m_AxisY
the options for the Y axis.protected ColorProvider
m_ColorProvider
the color provider to use.protected Paintlet[]
m_Overlays
the paintlets to use as overlay.protected AbstractTimeseriesPaintlet
m_Paintlet
the paintlet to use.protected AbstractPlotUpdater
m_PlotUpdater
the plot updater to use.protected boolean
m_ShowSidePanel
whether to show the side panel or not.protected boolean
m_ZoomOverview
whether to display the zoom overview.-
Fields inherited from class adams.flow.sink.AbstractGraphicalDisplay
m_GraphicFileChooser, m_MenuBar, m_MenuItemFileClear, m_MenuItemFileClose, m_MenuItemFileSaveAs, m_MenuItemFileSaveTextAs, m_MenuItemFlowPauseResume, m_MenuItemFlowStop, m_ShowFlowControlSubMenu, m_TextFileChooser, m_Writer
-
Fields inherited from class adams.flow.core.AbstractDisplay
BACKUP_INPUT, m_CreateFrame, m_DisplayType, m_Frame, m_Height, m_InputToken, m_KeepOpen, m_Panel, m_ShortTitle, m_Updating, m_Width, m_X, m_Y
-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
-
Constructor Summary
Constructors Constructor Description TimeseriesDisplay()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class[]
accepts()
Returns the class that the consumer accepts.String
axisXTipText()
Returns the tip text for this property.String
axisYTipText()
Returns the tip text for this property.void
clearPanel()
Clears the content of the panel.String
colorProviderTipText()
Returns the tip text for this property.TimeseriesDisplay.DisplayPanel
createDisplayPanel(Token token)
Creates a new display panel for the token.void
defineOptions()
Adds options to the internal list of options.protected void
display(Token token)
Displays the token (the panel and dialog have already been created at this stage).boolean
displayPanelRequiresScrollPane()
Returns whether the created display panel requires a scroll pane or not.TimeseriesXAxisPanelOptions
getAxisX()
Returns the setup for the X axis.TimeseriesYAxisPanelOptions
getAxisY()
Returns the setup for the Y axis.ColorProvider
getColorProvider()
Returns the color provider in use.protected TimeseriesXAxisPanelOptions
getDefaultAxisX()
Returns the setup for the X axis.protected TimeseriesYAxisPanelOptions
getDefaultAxisY()
Returns the setup for the Y axis.protected int
getDefaultHeight()
Returns the default height for the dialog.protected AbstractTimeseriesPaintlet
getDefaultPaintlet()
Returns the default paintlet.protected int
getDefaultWidth()
Returns the default width for the dialog.Paintlet[]
getOverlays()
Returns the overlay paintlets.AbstractTimeseriesPaintlet
getPaintlet()
Returns the paintlet in use.AbstractPlotUpdater
getPlotUpdater()
Returns the plot updater in use.boolean
getShowSidePanel()
Returns whether to show the side panel or not.boolean
getZoomOverview()
Returns whether the zoom overview gets displayed.String
globalInfo()
Returns a string describing the object.protected BasePanel
newPanel()
Creates the panel to display in the dialog.String
overlaysTipText()
Returns the tip text for this property.String
paintletTipText()
Returns the tip text for this property.String
plotUpdaterTipText()
Returns the tip text for this property.void
setAxisX(TimeseriesXAxisPanelOptions value)
Sets the setup for the X axis.void
setAxisY(TimeseriesYAxisPanelOptions value)
Sets the setup for the Y axis.void
setColorProvider(ColorProvider value)
Sets the color provider to use.void
setOverlays(Paintlet[] value)
Sets the overlay paintlets.void
setPaintlet(AbstractTimeseriesPaintlet value)
Sets the paintlet to use.void
setPlotUpdater(AbstractPlotUpdater value)
Sets the plot updater to use.void
setShowSidePanel(boolean value)
Sets whether to show the side panel or not.void
setZoomOverview(boolean value)
Sets whether to display the zoom overview.String
showSidePanelTipText()
Returns the tip text for this property.boolean
supportsClear()
Whether "clear" is supported and shows up in the menu.void
updatePlot()
Updates the panel regardless, notifying the listeners.void
wrapUp()
Cleans up after the execution has finished.String
zoomOverviewTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.sink.AbstractGraphicalDisplay
canPauseOrResume, cleanUpGUI, clear, close, createMenuBar, getGraphicFileChooser, getMenuBar, getSendToClasses, getSendToItem, getShowFlowControlSubMenu, getTextFileChooser, getWriter, hasPanel, hasSendToItem, isPaused, pauseResumeFlow, saveAs, saveTextAs, setShowFlowControlSubMenu, setWriter, showFlowControlSubMenuTipText, stopFlow, supplyComponent, updateMenu, writerTipText
-
Methods inherited from class adams.flow.sink.AbstractDisplay
newDisplayRunnable, postDisplay, preDisplay
-
Methods inherited from class adams.flow.core.AbstractDisplay
backupState, cleanUp, cleanUpGUIKeepOpen, closeFrame, createFrame, createTitle, currentInput, deregisterInWrapUp, deregisterWindow, deregisterWithEditor, displayTypeTipText, doCreateFrame, doExecute, getCreateFrame, getDefaultDisplayType, getDefaultShortTitle, getDefaultX, getDefaultY, getDisplayType, getFrame, getFrameDefaultCloseOperation, getHeight, getKeepOpen, getPanel, getQuickInfo, getShortTitle, getWidth, getX, getY, hasInput, heightTipText, initialize, input, postCreateFrame, preCreateFrame, registerWindow, registerWithEditor, reset, restoreState, setCreateFrame, setDisplayType, setHeight, setKeepOpen, setShortTitle, setWidth, setX, setY, shortTitleTipText, stopExecution, widthTipText, xTipText, yTipText
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, compareTo, configureLogger, destroy, equals, execute, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, postExecute, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, execute, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getQuickInfo, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.flow.core.InputConsumer
currentInput, hasInput, input
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_Paintlet
protected AbstractTimeseriesPaintlet m_Paintlet
the paintlet to use.
-
m_AxisX
protected TimeseriesXAxisPanelOptions m_AxisX
the options for the X axis.
-
m_AxisY
protected TimeseriesYAxisPanelOptions m_AxisY
the options for the Y axis.
-
m_ColorProvider
protected ColorProvider m_ColorProvider
the color provider to use.
-
m_ShowSidePanel
protected boolean m_ShowSidePanel
whether to show the side panel or not.
-
m_ZoomOverview
protected boolean m_ZoomOverview
whether to display the zoom overview.
-
m_Overlays
protected Paintlet[] m_Overlays
the paintlets to use as overlay.
-
m_PlotUpdater
protected AbstractPlotUpdater m_PlotUpdater
the plot updater to use.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractGraphicalDisplay
-
getDefaultWidth
protected int getDefaultWidth()
Returns the default width for the dialog.- Overrides:
getDefaultWidth
in classAbstractDisplay
- Returns:
- the default width
-
getDefaultHeight
protected int getDefaultHeight()
Returns the default height for the dialog.- Overrides:
getDefaultHeight
in classAbstractDisplay
- Returns:
- the default height
-
getDefaultPaintlet
protected AbstractTimeseriesPaintlet getDefaultPaintlet()
Returns the default paintlet.- Returns:
- the default paintlet
-
getDefaultAxisX
protected TimeseriesXAxisPanelOptions getDefaultAxisX()
Returns the setup for the X axis.- Returns:
- the setup
-
getDefaultAxisY
protected TimeseriesYAxisPanelOptions getDefaultAxisY()
Returns the setup for the Y axis.- Returns:
- the setup
-
setPaintlet
public void setPaintlet(AbstractTimeseriesPaintlet value)
Sets the paintlet to use.- Parameters:
value
- the paintlet
-
getPaintlet
public AbstractTimeseriesPaintlet getPaintlet()
Returns the paintlet in 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.
-
setAxisX
public void setAxisX(TimeseriesXAxisPanelOptions value)
Sets the setup for the X axis.- Parameters:
value
- the setup
-
getAxisX
public TimeseriesXAxisPanelOptions 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(TimeseriesYAxisPanelOptions value)
Sets the setup for the Y axis.- Parameters:
value
- the setup
-
getAxisY
public TimeseriesYAxisPanelOptions 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.
-
setColorProvider
public void setColorProvider(ColorProvider value)
Sets the color provider to use.- Specified by:
setColorProvider
in interfaceColorProviderHandler
- Parameters:
value
- the color provider
-
getColorProvider
public ColorProvider getColorProvider()
Returns the color provider in use.- Specified by:
getColorProvider
in interfaceColorProviderHandler
- Returns:
- the color provider
-
colorProviderTipText
public String colorProviderTipText()
Returns the tip text for this property.- Specified by:
colorProviderTipText
in interfaceColorProviderHandler
- 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 or not.- Parameters:
value
- if true the side panel gets displayed
-
getShowSidePanel
public boolean getShowSidePanel()
Returns whether to show the side panel or not.- Returns:
- true if the side panel gets displayed
-
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.
-
setZoomOverview
public void setZoomOverview(boolean value)
Sets whether to display the zoom overview.- Parameters:
value
- if true then the zoom overview will get displayed
-
getZoomOverview
public boolean getZoomOverview()
Returns whether the zoom overview gets displayed.- Returns:
- true if the zoom overview gets displayed
-
zoomOverviewTipText
public String zoomOverviewTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setOverlays
public void setOverlays(Paintlet[] value)
Sets the overlay paintlets.- Parameters:
value
- the overlay paintlets
-
getOverlays
public Paintlet[] getOverlays()
Returns the overlay paintlets.- Returns:
- the overlay paintlets
-
overlaysTipText
public String overlaysTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPlotUpdater
public void setPlotUpdater(AbstractPlotUpdater value)
Sets the plot updater to use.- Specified by:
setPlotUpdater
in interfaceDataPlotUpdaterHandler<AbstractPlotUpdater>
- Parameters:
value
- the updater
-
getPlotUpdater
public AbstractPlotUpdater getPlotUpdater()
Returns the plot updater in use.- Specified by:
getPlotUpdater
in interfaceDataPlotUpdaterHandler<AbstractPlotUpdater>
- Returns:
- the updater
-
plotUpdaterTipText
public String plotUpdaterTipText()
Returns the tip text for this property.- Specified by:
plotUpdaterTipText
in interfaceDataPlotUpdaterHandler<AbstractPlotUpdater>
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
supportsClear
public boolean supportsClear()
Whether "clear" is supported and shows up in the menu.- Specified by:
supportsClear
in interfaceClearableDisplay
- Overrides:
supportsClear
in classAbstractGraphicalDisplay
- Returns:
- true if supported
-
clearPanel
public void clearPanel()
Clears the content of the panel.- Specified by:
clearPanel
in classAbstractDisplay
-
newPanel
protected BasePanel newPanel()
Creates the panel to display in the dialog.- Specified by:
newPanel
in classAbstractDisplay
- Returns:
- the panel
-
accepts
public Class[] accepts()
Returns the class that the consumer accepts.- Specified by:
accepts
in interfaceInputConsumer
- Returns:
- adams.data.timeseries.Timeseries.class
-
display
protected void display(Token token)
Displays the token (the panel and dialog have already been created at this stage).- Specified by:
display
in classAbstractDisplay
- Parameters:
token
- the token to display
-
updatePlot
public void updatePlot()
Updates the panel regardless, notifying the listeners.- Specified by:
updatePlot
in interfaceDataPlotUpdaterHandler<AbstractPlotUpdater>
- Specified by:
updatePlot
in interfaceDataPlotUpdaterSupporter<AbstractPlotUpdater>
-
createDisplayPanel
public TimeseriesDisplay.DisplayPanel createDisplayPanel(Token token)
Creates a new display panel for the token.- Specified by:
createDisplayPanel
in interfaceDisplayPanelProvider
- Parameters:
token
- the token to display in a new panel, can be null- Returns:
- the generated panel
-
displayPanelRequiresScrollPane
public boolean displayPanelRequiresScrollPane()
Returns whether the created display panel requires a scroll pane or not.- Specified by:
displayPanelRequiresScrollPane
in interfaceDisplayPanelProvider
- Returns:
- true if the display panel requires a scroll pane
-
wrapUp
public void wrapUp()
Cleans up after the execution has finished.- Specified by:
wrapUp
in interfaceActor
- Overrides:
wrapUp
in classAbstractGraphicalDisplay
-
-