org.jfree.chart.renderer
Class XYStepAreaRenderer

java.lang.Object
  extended byorg.jfree.chart.renderer.AbstractRenderer
      extended byorg.jfree.chart.renderer.AbstractXYItemRenderer
          extended byorg.jfree.chart.renderer.XYStepAreaRenderer
All Implemented Interfaces:
java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable, XYItemRenderer

public class XYStepAreaRenderer
extends AbstractXYItemRenderer
implements XYItemRenderer, java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable

A step chart renderer that fills the area between the step and the x-axis.

Author:
Matthias Rose
See Also:
Serialized Form

Field Summary
static int AREA
          Useful constant for specifying the type of rendering (area only).
static int AREA_AND_SHAPES
          Useful constant for specifying the type of rendering (area and shapes).
protected  java.awt.Polygon pArea
          Area of the complete series
static int SHAPES
          Useful constant for specifying the type of rendering (shapes only).
 
Fields inherited from class org.jfree.chart.renderer.AbstractRenderer
DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, DEFAULT_PAINT, DEFAULT_SHAPE, DEFAULT_STROKE, DEFAULT_VALUE_LABEL_FONT, DEFAULT_VALUE_LABEL_PAINT, ZERO
 
Constructor Summary
XYStepAreaRenderer()
          Constructs a new renderer.
XYStepAreaRenderer(int type)
          Constructs a new renderer.
XYStepAreaRenderer(int type, XYToolTipGenerator toolTipGenerator, XYURLGenerator urlGenerator)
          Constructs a new renderer.
 
Method Summary
 java.lang.Object clone()
          Returns a clone of the renderer.
 void drawItem(java.awt.Graphics2D g2, XYItemRendererState state, java.awt.geom.Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairInfo crosshairInfo, int pass)
          Draws the visual representation of a single data item.
 boolean getPlotArea()
          Returns true if Area is being plotted by the renderer.
 boolean getPlotShapes()
          Returns true if shapes are being plotted by the renderer.
 double getRangeBase()
          Returns the value on the range axis which defines the 'lower' border of the area.
 XYItemRendererState initialise(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, XYPlot plot, XYDataset data, PlotRenderingInfo info)
          Initialises the renderer.
 boolean isOutline()
          Returns a flag that controls whether or not outlines of the areas are drawn.
 void setOutline(boolean show)
          Sets a flag that controls whether or not outlines of the areas are drawn.
 void setRangeBase(double val)
          Sets the value on the range axis which defines the default border of the area.
 void setShapesFilled(boolean filled)
          Sets the 'shapes filled' for ALL series.
 
Methods inherited from class org.jfree.chart.renderer.AbstractXYItemRenderer
drawDomainGridLine, drawDomainMarker, drawRangeGridLine, drawRangeMarker, equals, fillDomainGridBand, fillRangeGridBand, getDrawingSupplier, getLegendItem, getPassCount, getPlot, getRangeType, getToolTipGenerator, getURLGenerator, setPlot, setToolTipGenerator, setURLGenerator
 
Methods inherited from class org.jfree.chart.renderer.AbstractRenderer
addChangeListener, addPropertyChangeListener, createTransformedShape, firePropertyChanged, getBaseItemLabelAnchor, getBaseItemLabelAngle, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelRotationAnchor, getBaseItemLabelsVisible, getBaseItemLabelTextAnchor, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseShape, getBaseStroke, getItemLabelAnchor, getItemLabelAngle, getItemLabelFont, getItemLabelPaint, getItemLabelRotationAnchor, getItemLabelTextAnchor, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesItemLabelAnchor, getSeriesItemLabelAngle, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesItemLabelRotationAnchor, getSeriesItemLabelTextAnchor, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, hashCode, isItemLabelVisible, isSeriesItemLabelsVisible, notifyListeners, removeChangeListener, removePropertyChangeListener, setBaseAngle, setBaseItemLabelAnchor, setBaseItemLabelFont, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelPaint, setBaseItemLabelRotationAnchor, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelTextAnchor, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlinePaint, setBaseOutlineStroke, setBaseOutlineStroke, setBasePaint, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseShape, setBaseShape, setBaseStroke, setBaseStroke, setItemLabelAnchor, setItemLabelAngle, setItemLabelFont, setItemLabelFont, setItemLabelPaint, setItemLabelPaint, setItemLabelRotationAnchor, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setItemLabelTextAnchor, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlinePaint, setOutlineStroke, setOutlineStroke, setPaint, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesAngle, setSeriesItemLabelAnchor, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelRotationAnchor, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelTextAnchor, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setShape, setShape, setStroke, setStroke
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jfree.chart.renderer.XYItemRenderer
addPropertyChangeListener, drawDomainGridLine, drawDomainMarker, drawRangeGridLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, getBaseStroke, getItemOutlinePaint, getItemPaint, getItemShape, getItemStroke, getLegendItem, getPassCount, getPlot, getRangeType, getSeriesOutlinePaint, getSeriesPaint, getSeriesShape, getSeriesStroke, getToolTipGenerator, getURLGenerator, removePropertyChangeListener, setBaseStroke, setPlot, setSeriesPaint, setSeriesStroke, setStroke, setToolTipGenerator, setURLGenerator
 

Field Detail

SHAPES

public static final int SHAPES
Useful constant for specifying the type of rendering (shapes only).

See Also:
Constant Field Values

AREA

public static final int AREA
Useful constant for specifying the type of rendering (area only).

See Also:
Constant Field Values

AREA_AND_SHAPES

public static final int AREA_AND_SHAPES
Useful constant for specifying the type of rendering (area and shapes).

See Also:
Constant Field Values

pArea

protected transient java.awt.Polygon pArea
Area of the complete series

Constructor Detail

XYStepAreaRenderer

public XYStepAreaRenderer()
Constructs a new renderer.


XYStepAreaRenderer

public XYStepAreaRenderer(int type)
Constructs a new renderer.

Parameters:
type - the type of the renderer.

XYStepAreaRenderer

public XYStepAreaRenderer(int type,
                          XYToolTipGenerator toolTipGenerator,
                          XYURLGenerator urlGenerator)
Constructs a new renderer.

To specify the type of renderer, use one of the constants: AREA, SHAPES or AREA_AND_SHAPES.

Parameters:
type - the type of renderer.
toolTipGenerator - the tool tip generator to use. null is none.
urlGenerator - the URL generator (null permitted).
Method Detail

isOutline

public boolean isOutline()
Returns a flag that controls whether or not outlines of the areas are drawn.

Returns:
the flag.

setOutline

public void setOutline(boolean show)
Sets a flag that controls whether or not outlines of the areas are drawn.

Parameters:
show - the flag.

getPlotShapes

public boolean getPlotShapes()
Returns true if shapes are being plotted by the renderer.

Returns:
true if shapes are being plotted by the renderer.

setShapesFilled

public void setShapesFilled(boolean filled)
Sets the 'shapes filled' for ALL series.

Parameters:
filled - the flag.

getPlotArea

public boolean getPlotArea()
Returns true if Area is being plotted by the renderer.

Returns:
true if Area is being plotted by the renderer.

setRangeBase

public void setRangeBase(double val)
Sets the value on the range axis which defines the default border of the area. E.g. setRangeBase(Double.NEGATIVE_INFINITY) lets areas always reach the lower border of the plotArea.

Parameters:
val - the value on the range axis which defines the default border of the area.

getRangeBase

public double getRangeBase()
Returns the value on the range axis which defines the 'lower' border of the area.

Returns:
double the value on the range axis which defines the 'lower' border of the area.

initialise

public XYItemRendererState initialise(java.awt.Graphics2D g2,
                                      java.awt.geom.Rectangle2D dataArea,
                                      XYPlot plot,
                                      XYDataset data,
                                      PlotRenderingInfo info)
Initialises the renderer. Here we calculate the Java2D y-coordinate for zero, since all the bars have their bases fixed at zero.

Specified by:
initialise in interface XYItemRenderer
Overrides:
initialise in class AbstractXYItemRenderer
Parameters:
g2 - the graphics device.
dataArea - the area inside the axes.
plot - the plot.
data - the data.
info - an optional info collection object to return data back to the caller.
Returns:
The number of passes required by the renderer.

drawItem

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

Specified by:
drawItem in interface XYItemRenderer
Parameters:
g2 - the graphics device.
state - the renderer state.
dataArea - the area within which the data is being drawn.
info - collects information 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).
crosshairInfo - information about crosshairs on a plot.
pass - the pass index.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Returns a clone of the renderer.

Specified by:
clone in interface org.jfree.util.PublicCloneable
Overrides:
clone in class AbstractXYItemRenderer
Returns:
A clone.
Throws:
java.lang.CloneNotSupportedException - if the renderer cannot be cloned.