org.jfree.chart.renderer.xy

Class XYBoxAndWhiskerRenderer

public class XYBoxAndWhiskerRenderer extends AbstractXYItemRenderer implements XYItemRenderer, Cloneable, PublicCloneable, Serializable

A renderer that draws box-and-whisker items on an XYPlot. This renderer requires a BoxAndWhiskerXYDataset).

This renderer does not include any code to calculate the crosshair point.

Constructor Summary
XYBoxAndWhiskerRenderer()
Creates a new renderer for box and whisker charts.
XYBoxAndWhiskerRenderer(double boxWidth)
Creates a new renderer for box and whisker charts.
Method Summary
Objectclone()
Returns a clone of the renderer.
protected voiddrawEllipse(Point2D point, double oRadius, Graphics2D g2)
Draws an ellipse to represent an outlier.
protected voiddrawHighFarOut(double aRadius, Graphics2D g2, double xx, double m)
Draws a triangle to indicate the presence of far out values.
voiddrawHorizontalItem(Graphics2D g2, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
Draws the visual representation of a single data item.
voiddrawItem(Graphics2D g2, XYItemRendererState state, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
Draws the visual representation of a single data item.
protected voiddrawLowFarOut(double aRadius, Graphics2D g2, double xx, double m)
Draws a triangle to indicate the presence of far out values.
protected voiddrawMultipleEllipse(Point2D point, double boxWidth, double oRadius, Graphics2D g2)
Draws two ellipses to represent overlapping outliers.
voiddrawVerticalItem(Graphics2D g2, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
Draws the visual representation of a single data item.
booleanequals(Object obj)
Tests this renderer for equality with another object.
PaintgetArtifactPaint()
Returns the paint used to paint the various artifacts such as outliers, farout symbol, median line and the averages ellipse.
PaintgetBoxPaint()
Returns the paint used to fill boxes.
doublegetBoxWidth()
Returns the width of each box.
booleangetFillBox()
Returns the flag that controls whether or not the box is filled.
voidsetArtifactPaint(Paint artifactPaint)
Sets the paint used to paint the various artifacts such as outliers, farout symbol, median line and the averages ellipse.
voidsetBoxPaint(Paint paint)
Sets the paint used to fill boxes and sends a RendererChangeEvent to all registered listeners.
voidsetBoxWidth(double width)
Sets the box width and sends a RendererChangeEvent to all registered listeners.
voidsetFillBox(boolean flag)
Sets the flag that controls whether or not the box is filled and sends a RendererChangeEvent to all registered listeners.

Constructor Detail

XYBoxAndWhiskerRenderer

public XYBoxAndWhiskerRenderer()
Creates a new renderer for box and whisker charts.

XYBoxAndWhiskerRenderer

public XYBoxAndWhiskerRenderer(double boxWidth)
Creates a new renderer for box and whisker charts.

Use -1 for the box width if you prefer the width to be calculated automatically.

Parameters: boxWidth the box width.

Method Detail

clone

public Object clone()
Returns a clone of the renderer.

Returns: A clone.

Throws: CloneNotSupportedException if the renderer cannot be cloned.

drawEllipse

protected void drawEllipse(Point2D point, double oRadius, Graphics2D g2)
Draws an ellipse to represent an outlier.

Parameters: point the location. oRadius the radius. g2 the graphics device.

drawHighFarOut

protected void drawHighFarOut(double aRadius, Graphics2D g2, double xx, double m)
Draws a triangle to indicate the presence of far out values.

Parameters: aRadius the radius. g2 the graphics device. xx the x value. m the max y value.

drawHorizontalItem

public void drawHorizontalItem(Graphics2D g2, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
Draws the visual representation of a single data item.

Parameters: g2 the graphics device. dataArea the area within which the plot is being drawn. info collects info about the drawing. plot the plot (can be used to obtain standard color information etc). domainAxis the domain axis. rangeAxis the range axis. dataset the dataset. series the series index (zero-based). item the item index (zero-based). crosshairState crosshair information for the plot (null permitted). pass the pass index.

drawItem

public void drawItem(Graphics2D g2, XYItemRendererState state, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
Draws the visual representation of a single data item.

Parameters: g2 the graphics device. state the renderer state. dataArea the area within which the plot is being drawn. info collects info about the drawing. plot the plot (can be used to obtain standard color information etc). domainAxis the domain axis. rangeAxis the range axis. dataset the dataset. series the series index (zero-based). item the item index (zero-based). crosshairState crosshair information for the plot (null permitted). pass the pass index.

drawLowFarOut

protected void drawLowFarOut(double aRadius, Graphics2D g2, double xx, double m)
Draws a triangle to indicate the presence of far out values.

Parameters: aRadius the radius. g2 the graphics device. xx the x value. m the min y value.

drawMultipleEllipse

protected void drawMultipleEllipse(Point2D point, double boxWidth, double oRadius, Graphics2D g2)
Draws two ellipses to represent overlapping outliers.

Parameters: point the location. boxWidth the box width. oRadius the radius. g2 the graphics device.

drawVerticalItem

public void drawVerticalItem(Graphics2D g2, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
Draws the visual representation of a single data item.

Parameters: g2 the graphics device. dataArea the area within which the plot is being drawn. info collects info about the drawing. plot the plot (can be used to obtain standard color information etc). domainAxis the domain axis. rangeAxis the range axis. dataset the dataset. series the series index (zero-based). item the item index (zero-based). crosshairState crosshair information for the plot (null permitted). pass the pass index.

equals

public boolean equals(Object obj)
Tests this renderer for equality with another object.

Parameters: obj the object (null permitted).

Returns: true or false.

getArtifactPaint

public Paint getArtifactPaint()
Returns the paint used to paint the various artifacts such as outliers, farout symbol, median line and the averages ellipse.

Returns: The paint (never null).

getBoxPaint

public Paint getBoxPaint()
Returns the paint used to fill boxes.

Returns: The paint (possibly null).

getBoxWidth

public double getBoxWidth()
Returns the width of each box.

Returns: The box width.

getFillBox

public boolean getFillBox()
Returns the flag that controls whether or not the box is filled.

Returns: A boolean.

setArtifactPaint

public void setArtifactPaint(Paint artifactPaint)
Sets the paint used to paint the various artifacts such as outliers, farout symbol, median line and the averages ellipse.

Parameters: artifactPaint the paint (null not permitted).

setBoxPaint

public void setBoxPaint(Paint paint)
Sets the paint used to fill boxes and sends a RendererChangeEvent to all registered listeners.

Parameters: paint the paint (null permitted).

setBoxWidth

public void setBoxWidth(double width)
Sets the box width and sends a RendererChangeEvent to all registered listeners.

If you set the width to a negative value, the renderer will calculate the box width automatically based on the space available on the chart.

Parameters: width the width.

setFillBox

public void setFillBox(boolean flag)
Sets the flag that controls whether or not the box is filled and sends a RendererChangeEvent to all registered listeners.

Parameters: flag the flag.