weka.gui.beans
Class WekaOffscreenChartRenderer

java.lang.Object
  extended by weka.gui.beans.AbstractOffscreenChartRenderer
      extended by weka.gui.beans.WekaOffscreenChartRenderer
All Implemented Interfaces:
OffscreenChartRenderer

public class WekaOffscreenChartRenderer
extends AbstractOffscreenChartRenderer

Default OffscreenChartRenderer that uses Weka's built-in chart and graph classes.

Version:
$Revision: 7662 $
Author:
Mark Hall (mhall{[at]}pentaho{[dot]}com)

Constructor Summary
WekaOffscreenChartRenderer()
           
 
Method Summary
 java.lang.String optionsTipTextHTML()
          Gets a short list of additional options (if any), suitable for displaying in a tip text, in HTML form
 java.lang.String rendererName()
          The name of this off screen renderer
 java.awt.image.BufferedImage renderHistogram(int width, int height, java.util.List<Instances> series, java.lang.String attToPlot, java.util.List<java.lang.String> optionalArgs)
          Render histogram(s) (numeric attribute) or pie chart (nominal attribute).
 java.awt.image.BufferedImage renderXYLineChart(int width, int height, java.util.List<Instances> series, java.lang.String xAxis, java.lang.String yAxis, java.util.List<java.lang.String> optionalArgs)
          Render an XY line chart
 java.awt.image.BufferedImage renderXYScatterPlot(int width, int height, java.util.List<Instances> series, java.lang.String xAxis, java.lang.String yAxis, java.util.List<java.lang.String> optionalArgs)
          Render an XY scatter plot
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WekaOffscreenChartRenderer

public WekaOffscreenChartRenderer()
Method Detail

rendererName

public java.lang.String rendererName()
The name of this off screen renderer

Returns:
the name of this off screen renderer

optionsTipTextHTML

public java.lang.String optionsTipTextHTML()
Gets a short list of additional options (if any), suitable for displaying in a tip text, in HTML form

Specified by:
optionsTipTextHTML in interface OffscreenChartRenderer
Overrides:
optionsTipTextHTML in class AbstractOffscreenChartRenderer
Returns:
additional options description in simple HTML form

renderXYLineChart

public java.awt.image.BufferedImage renderXYLineChart(int width,
                                                      int height,
                                                      java.util.List<Instances> series,
                                                      java.lang.String xAxis,
                                                      java.lang.String yAxis,
                                                      java.util.List<java.lang.String> optionalArgs)
                                               throws java.lang.Exception
Render an XY line chart

Parameters:
width - the width of the resulting chart in pixels
height - the height of the resulting chart in pixels
series - a list of Instances - one for each series to be plotted
xAxis - the name of the attribute for the x-axis (all series Instances are expected to have an attribute of the same type with this name)
yAxis - the name of the attribute for the y-axis (all series Instances are expected to have an attribute of the same type with this name)
optionalArgs - optional arguments to the renderer (may be null)
Returns:
a BufferedImage containing the chart
Throws:
java.lang.Exception - if there is a problem rendering the chart

renderXYScatterPlot

public java.awt.image.BufferedImage renderXYScatterPlot(int width,
                                                        int height,
                                                        java.util.List<Instances> series,
                                                        java.lang.String xAxis,
                                                        java.lang.String yAxis,
                                                        java.util.List<java.lang.String> optionalArgs)
                                                 throws java.lang.Exception
Render an XY scatter plot

Parameters:
width - the width of the resulting chart in pixels
height - the height of the resulting chart in pixels
series - a list of Instances - one for each series to be plotted
xAxis - the name of the attribute for the x-axis (all series Instances are expected to have an attribute of the same type with this name)
yAxis - the name of the attribute for the y-axis (all series Instances are expected to have an attribute of the same type with this name)
optionalArgs - optional arguments to the renderer (may be null)
Returns:
a BufferedImage containing the chart
Throws:
java.lang.Exception - if there is a problem rendering the chart

renderHistogram

public java.awt.image.BufferedImage renderHistogram(int width,
                                                    int height,
                                                    java.util.List<Instances> series,
                                                    java.lang.String attToPlot,
                                                    java.util.List<java.lang.String> optionalArgs)
                                             throws java.lang.Exception
Render histogram(s) (numeric attribute) or pie chart (nominal attribute). Some implementations may not be able to render more than one histogram/pie on the same chart - the implementation can either throw an exception or just process the first series in this case. This Default implementation uses Weka's built in VisualizeAttributePanel to render with and, as such, can only render histograms. It produces histograms for both numeric and nominal attributes.

Parameters:
width - the width of the resulting chart in pixels
height - the height of the resulting chart in pixels
series - a list of Instances - one for each series to be plotted
attsToPlot - the attribute to plot corresponding to the Instances in the series list
optionalArgs - optional arguments to the renderer (may be null)
Returns:
a BufferedImage containing the chart
Throws:
java.lang.Exception - if there is a problem rendering the chart