Class MOAClusterVisualization

  • All Implemented Interfaces:
    adams.core.AdditionalInformationHandler, adams.core.CleanUpHandler, adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.QuickInfoSupporter, adams.core.ShallowCopySupporter<adams.flow.core.Actor>, adams.core.SizeOfHandler, adams.core.Stoppable, adams.core.StoppableWithFeedback, adams.core.VariablesInspectionHandler, adams.event.VariableChangeListener, adams.flow.core.Actor, adams.flow.core.ClearableDisplay, adams.flow.core.DisplayTypeSupporter, adams.flow.core.ErrorHandler, adams.flow.core.InputConsumer, adams.flow.sink.ComponentSupplier, adams.gui.core.MenuBarProvider, adams.gui.sendto.SendToActionSupporter, Serializable, Comparable

    public class MOAClusterVisualization
    extends adams.flow.sink.AbstractGraphicalDisplay
    Visualizes MOA clusters.

    Input/output:
    - accepts:
       com.yahoo.labs.samoa.instances.Instance
       com.yahoo.labs.samoa.instances.Instances


    -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: MOAClusterVisualization
     
    -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: 800
        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
     
    -clusterer <adams.flow.core.CallableActorReference> (property: clusterer)
        The name of the callable MOA clusterer to visualize.
        default: MOAClustererSetup
     
    -measure <adams.core.base.BaseMeasureCollection> [-measure ...] (property: measures)
        The measures to collect.
        default: 
     
    -decay-horizon <int> (property: decayHorizon)
        The size of the decay horizon in data points (= sliding window).
        default: 1000
        minimum: 1
     
    -process-frequency <int> (property: processFrequency)
        The amount of instances to process in one step.
        default: 1000
        minimum: 1
     
    -redraw-interval <int> (property: redrawInterval)
        After how many instances do we repaint.
        default: 100
        minimum: 1
     
    -draw-points <boolean> (property: drawPoints)
        Whether to draw the points.
        default: true
     
    -draw-ground-truth <boolean> (property: drawGroundTruth)
        Whether to draw the ground truth.
        default: true
     
    -draw-micro-clustering <boolean> (property: drawMicroClustering)
        Whether to draw the micro clustering.
        default: true
     
    -draw-clustering <boolean> (property: drawClustering)
        Whether to draw the clustering.
        default: true
     
    Version:
    $Revision$
    Author:
    Jansen moa@cs.rwth-aachen.de (original MOA code), FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected moa.clusterers.AbstractClusterer m_ActualClusterer
      the cluster algorithm to use.
      protected moa.evaluation.MeasureCollection[] m_ActualMeasures
      the measure collections contain all the measures
      protected adams.flow.core.CallableActorReference m_Clusterer
      the name of the callable clusterer to use.
      protected adams.gui.core.BaseComboBox<String> m_ComboBoxDimX
      the combobox for the X dimension.
      protected adams.gui.core.BaseComboBox<String> m_ComboBoxDimY
      the combobox for the Y dimension.
      protected int m_DecayHorizon
      amount of relevant instances; older instances will be dropped; creates the 'sliding window' over the stream; is strongly connected to the decay rate and decay threshold
      protected double m_DecayRate
      the decay rate of the stream, often reffered to as lambda; is being calculated from the horizion and the threshold as these are more intuitive to define
      protected double m_DecayThreshold
      the decay threshold defines the minimum weight of an instance to be relevant
      protected boolean m_DrawClustering
      whether to draw the clustering.
      protected boolean m_DrawGroundTruth
      whether to draw the ground truth.
      protected boolean m_DrawMicroClustering
      whether to draw the micro clustering.
      protected boolean m_DrawPoints
      whether to draw the points.
      protected moa.gui.visualization.GraphCanvas m_Graphcanvas
      panel to hold the graph
      protected moa.cluster.Clustering m_gtClustering
      all possible clusterings
      protected adams.gui.dialog.TextPanel m_LogPanel
      for outputting textual stats.
      protected moa.cluster.Clustering m_Macro  
      protected BaseMeasureCollection[] m_Measures
      the measures to use.
      protected moa.cluster.Clustering m_Micro  
      protected ArrayList<moa.gui.visualization.DataPoint> m_PointArray
      the array of points to process.
      protected LinkedList<moa.gui.visualization.DataPoint> m_PointBuffer
      the buffer for the data points.
      protected int m_ProcessCounter
      the process counter.
      protected int m_ProcessFrequency
      amount of instances to process in one step
      protected int m_RedrawInterval
      after how many instances do we repaint the streampanel? the GUI becomes very slow with small values.
      protected int m_SpeedCounter
      the speed counter.
      protected moa.gui.visualization.StreamPanel m_StreamPanel
      stream panel that datapoints and clusterings will be drawn to
      protected int m_Timestamp
      the timestamp for the data.
      • 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_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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Class[] accepts()
      Returns the class that the consumer accepts.
      void clearPanel()
      Clears the content of the panel.
      String clustererTipText()
      Returns the tip text for this property.
      String decayHorizonTipText()
      Returns the tip text for this property.
      void defineOptions()
      Adds options to the internal list of options.
      protected void display​(adams.flow.core.Token token)
      Displays the token (the panel and dialog have already been created at this stage).
      protected void drawClusterings​(List<moa.gui.visualization.DataPoint> points)
      Draws the clusterings.
      String drawClusteringTipText()
      Returns the tip text for this property.
      String drawGroundTruthTipText()
      Returns the tip text for this property.
      String drawMicroClusteringTipText()
      Returns the tip text for this property.
      String drawPointsTipText()
      Returns the tip text for this property.
      protected void evaluateClustering​(moa.cluster.Clustering found_clustering, moa.cluster.Clustering trueClustering, ArrayList<moa.gui.visualization.DataPoint> points, boolean algorithm)
      Evaluates the clustering.
      adams.flow.core.CallableActorReference getClusterer()
      Returns the callable clusterer to use.
      protected moa.clusterers.AbstractClusterer getClustererInstance()
      Returns an instance of the callable clusterer.
      int getDecayHorizon()
      Returns the size of the decay horizon.
      boolean getDrawClustering()
      Returns whether to draw the clustering.
      boolean getDrawGroundTruth()
      Returns whether to draw the ground truth.
      boolean getDrawMicroClustering()
      Returns whether to draw the micro clustering.
      boolean getDrawPoints()
      Returns whether to draw the points.
      BaseMeasureCollection[] getMeasures()
      Returns the measures to collect.
      int getProcessFrequency()
      Returns the amount of instances to process in one step.
      String getQuickInfo()
      Returns a quick info about the actor, which will be displayed in the GUI.
      int getRedrawInterval()
      Returns after how many instances do we repaint.
      String globalInfo()
      Returns a string describing the object.
      String measuresTipText()
      Returns the tip text for this property.
      protected adams.gui.core.BasePanel newPanel()
      Creates the panel to display in the dialog.
      protected void processClusterings​(ArrayList<moa.gui.visualization.DataPoint> points)
      Processes the clusterings and initiates the drawing.
      String processFrequencyTipText()
      Returns the tip text for this property.
      String redrawIntervalTipText()
      Returns the tip text for this property.
      protected void reset()
      Resets the object.
      void setClusterer​(adams.flow.core.CallableActorReference value)
      Sets the callable clusterer to use.
      void setDecayHorizon​(int value)
      Sets the size of the decay horizon.
      void setDrawClustering​(boolean value)
      Sets whether to draw the clustering.
      void setDrawGroundTruth​(boolean value)
      Sets whether to draw the ground truth.
      void setDrawMicroClustering​(boolean value)
      Sets whether to draw the micro clustering.
      void setDrawPoints​(boolean value)
      Sets whether to draw the points.
      void setMeasures​(BaseMeasureCollection[] value)
      Sets the measures to collect.
      void setProcessFrequency​(int value)
      Sets the amount of instances to process in one step.
      void setRedrawInterval​(int value)
      Sets after how many instances do we repaint.
      • 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, supportsClear, updateMenu, wrapUp, writerTipText
      • Methods inherited from class adams.flow.sink.AbstractDisplay

        newDisplayRunnable, postDisplay, preDisplay
      • Methods inherited from class adams.flow.core.AbstractDisplay

        backupState, cleanUp, closeFrame, createFrame, createTitle, currentInput, deregisterInWrapUp, deregisterWindow, deregisterWithEditor, displayTypeTipText, doCreateFrame, doExecute, getCreateFrame, getDefaultDisplayType, getDefaultHeight, getDefaultShortTitle, getDefaultWidth, getDefaultX, getDefaultY, getDisplayType, getFrame, getFrameDefaultCloseOperation, getHeight, getPanel, getShortTitle, getWidth, getX, getY, hasInput, heightTipText, initialize, input, postCreateFrame, preCreateFrame, registerWindow, registerWithEditor, restoreState, setCreateFrame, setDisplayType, setHeight, 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 interface adams.flow.core.Actor

        cleanUp, compareTo, destroy, equals, execute, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, 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_Clusterer

        protected adams.flow.core.CallableActorReference m_Clusterer
        the name of the callable clusterer to use.
      • m_ActualMeasures

        protected moa.evaluation.MeasureCollection[] m_ActualMeasures
        the measure collections contain all the measures
      • m_DecayHorizon

        protected int m_DecayHorizon
        amount of relevant instances; older instances will be dropped; creates the 'sliding window' over the stream; is strongly connected to the decay rate and decay threshold
      • m_DecayThreshold

        protected double m_DecayThreshold
        the decay threshold defines the minimum weight of an instance to be relevant
      • m_DrawPoints

        protected boolean m_DrawPoints
        whether to draw the points.
      • m_DrawGroundTruth

        protected boolean m_DrawGroundTruth
        whether to draw the ground truth.
      • m_DrawMicroClustering

        protected boolean m_DrawMicroClustering
        whether to draw the micro clustering.
      • m_DrawClustering

        protected boolean m_DrawClustering
        whether to draw the clustering.
      • m_ProcessFrequency

        protected int m_ProcessFrequency
        amount of instances to process in one step
      • m_RedrawInterval

        protected int m_RedrawInterval
        after how many instances do we repaint the streampanel? the GUI becomes very slow with small values.
      • m_StreamPanel

        protected moa.gui.visualization.StreamPanel m_StreamPanel
        stream panel that datapoints and clusterings will be drawn to
      • m_ActualClusterer

        protected moa.clusterers.AbstractClusterer m_ActualClusterer
        the cluster algorithm to use.
      • m_DecayRate

        protected double m_DecayRate
        the decay rate of the stream, often reffered to as lambda; is being calculated from the horizion and the threshold as these are more intuitive to define
      • m_gtClustering

        protected moa.cluster.Clustering m_gtClustering
        all possible clusterings
      • m_Macro

        protected moa.cluster.Clustering m_Macro
      • m_Micro

        protected moa.cluster.Clustering m_Micro
      • m_Graphcanvas

        protected moa.gui.visualization.GraphCanvas m_Graphcanvas
        panel to hold the graph
      • m_LogPanel

        protected adams.gui.dialog.TextPanel m_LogPanel
        for outputting textual stats.
      • m_PointBuffer

        protected LinkedList<moa.gui.visualization.DataPoint> m_PointBuffer
        the buffer for the data points.
      • m_PointArray

        protected ArrayList<moa.gui.visualization.DataPoint> m_PointArray
        the array of points to process.
      • m_Timestamp

        protected int m_Timestamp
        the timestamp for the data.
      • m_ProcessCounter

        protected int m_ProcessCounter
        the process counter.
      • m_SpeedCounter

        protected int m_SpeedCounter
        the speed counter.
      • m_ComboBoxDimX

        protected adams.gui.core.BaseComboBox<String> m_ComboBoxDimX
        the combobox for the X dimension.
      • m_ComboBoxDimY

        protected adams.gui.core.BaseComboBox<String> m_ComboBoxDimY
        the combobox for the Y dimension.
    • Constructor Detail

      • MOAClusterVisualization

        public MOAClusterVisualization()
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing the object.
        Specified by:
        globalInfo in interface adams.core.GlobalInfoSupporter
        Specified by:
        globalInfo in class adams.core.option.AbstractOptionHandler
        Returns:
        a description suitable for displaying in the gui
      • reset

        protected void reset()
        Resets the object. Removes graphical components as well.
        Overrides:
        reset in class adams.flow.core.AbstractDisplay
      • defineOptions

        public void defineOptions()
        Adds options to the internal list of options.
        Specified by:
        defineOptions in interface adams.core.option.OptionHandler
        Overrides:
        defineOptions in class adams.flow.sink.AbstractGraphicalDisplay
      • setClusterer

        public void setClusterer​(adams.flow.core.CallableActorReference value)
        Sets the callable clusterer to use.
        Parameters:
        value - the clusterer name
      • getClusterer

        public adams.flow.core.CallableActorReference getClusterer()
        Returns the callable clusterer to use.
        Returns:
        the clusterer name
      • clustererTipText

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

        public void setDecayHorizon​(int value)
        Sets the size of the decay horizon.
        Parameters:
        value - the size in data points
      • getDecayHorizon

        public int getDecayHorizon()
        Returns the size of the decay horizon.
        Returns:
        the size in data points
      • decayHorizonTipText

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

        public void setProcessFrequency​(int value)
        Sets the amount of instances to process in one step.
        Parameters:
        value - the number of instances
      • getProcessFrequency

        public int getProcessFrequency()
        Returns the amount of instances to process in one step.
        Returns:
        the number of instances
      • processFrequencyTipText

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

        public void setRedrawInterval​(int value)
        Sets after how many instances do we repaint.
        Parameters:
        value - the number of instances
      • getRedrawInterval

        public int getRedrawInterval()
        Returns after how many instances do we repaint.
        Returns:
        the number of instances
      • redrawIntervalTipText

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

        public void setDrawPoints​(boolean value)
        Sets whether to draw the points.
        Parameters:
        value - true if to draw
      • getDrawPoints

        public boolean getDrawPoints()
        Returns whether to draw the points.
        Returns:
        true if to draw
      • drawPointsTipText

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

        public void setDrawGroundTruth​(boolean value)
        Sets whether to draw the ground truth.
        Parameters:
        value - true if to draw
      • getDrawGroundTruth

        public boolean getDrawGroundTruth()
        Returns whether to draw the ground truth.
        Returns:
        true if to draw
      • drawGroundTruthTipText

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

        public void setDrawMicroClustering​(boolean value)
        Sets whether to draw the micro clustering.
        Parameters:
        value - true if to draw
      • getDrawMicroClustering

        public boolean getDrawMicroClustering()
        Returns whether to draw the micro clustering.
        Returns:
        true if to draw
      • drawMicroClusteringTipText

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

        public void setDrawClustering​(boolean value)
        Sets whether to draw the clustering.
        Parameters:
        value - true if to draw
      • getDrawClustering

        public boolean getDrawClustering()
        Returns whether to draw the clustering.
        Returns:
        true if to draw
      • drawClusteringTipText

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

        public void setMeasures​(BaseMeasureCollection[] value)
        Sets the measures to collect.
        Parameters:
        value - the measures
      • getMeasures

        public BaseMeasureCollection[] getMeasures()
        Returns the measures to collect.
        Returns:
        the measures
      • measuresTipText

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

        public String getQuickInfo()
        Returns a quick info about the actor, which will be displayed in the GUI.
        Specified by:
        getQuickInfo in interface adams.flow.core.Actor
        Specified by:
        getQuickInfo in interface adams.core.QuickInfoSupporter
        Overrides:
        getQuickInfo in class adams.flow.core.AbstractDisplay
        Returns:
        null if no info available, otherwise short string
      • accepts

        public Class[] accepts()
        Returns the class that the consumer accepts.
        Returns:
        the Class of objects that can be processed
      • getClustererInstance

        protected moa.clusterers.AbstractClusterer getClustererInstance()
        Returns an instance of the callable clusterer.
        Returns:
        the clusterer
      • drawClusterings

        protected void drawClusterings​(List<moa.gui.visualization.DataPoint> points)
        Draws the clusterings.
        Parameters:
        points - the points to draw
      • evaluateClustering

        protected void evaluateClustering​(moa.cluster.Clustering found_clustering,
                                          moa.cluster.Clustering trueClustering,
                                          ArrayList<moa.gui.visualization.DataPoint> points,
                                          boolean algorithm)
        Evaluates the clustering.
        Parameters:
        found_clustering -
        trueClustering -
        points -
        algorithm -
      • processClusterings

        protected void processClusterings​(ArrayList<moa.gui.visualization.DataPoint> points)
        Processes the clusterings and initiates the drawing.
        Parameters:
        points - the data points
      • display

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

        public void clearPanel()
        Clears the content of the panel.
        Specified by:
        clearPanel in class adams.flow.core.AbstractDisplay
      • newPanel

        protected adams.gui.core.BasePanel newPanel()
        Creates the panel to display in the dialog.
        Specified by:
        newPanel in class adams.flow.core.AbstractDisplay
        Returns:
        the panel