org.jfree.chart.renderer.xy
Class StackedXYAreaRenderer
java.lang.Object
org.jfree.chart.renderer.AbstractRenderer
org.jfree.chart.renderer.xy.AbstractXYItemRenderer
org.jfree.chart.renderer.xy.XYAreaRenderer
org.jfree.chart.renderer.xy.StackedXYAreaRenderer
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, LegendItemSource, XYItemRenderer, org.jfree.util.PublicCloneable
public class StackedXYAreaRenderer
- extends XYAreaRenderer
- implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable
A stacked area renderer for the XYPlot class.
SPECIAL NOTE: This renderer does not currently handle negative data values
correctly. This should get fixed at some point, but the current workaround
is to use the StackedXYAreaRenderer2 class instead.
- See Also:
- Serialized Form
|
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,
CrosshairState crosshairState,
int pass)
Draws the visual representation of a single data item. |
boolean |
equals(java.lang.Object obj)
Tests the renderer for equality with an arbitrary object. |
Range |
findRangeBounds(XYDataset dataset)
Returns the range of values the renderer requires to display all the
items from the specified dataset. |
int |
getPassCount()
Returns the number of passes required by the renderer. |
protected double |
getPreviousHeight(TableXYDataset dataset,
int series,
int index)
Calculates the stacked value of the all series up to, but not including
series for the specified item. |
java.awt.Paint |
getShapePaint()
Returns the paint used for rendering shapes, or null if
using series paints. |
java.awt.Stroke |
getShapeStroke()
Returns the stroke used for rendering shapes, or null if
using series strokes. |
XYItemRendererState |
initialise(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D dataArea,
XYPlot plot,
XYDataset data,
PlotRenderingInfo info)
Initialises the renderer. |
void |
setShapePaint(java.awt.Paint shapePaint)
Sets the paint for rendering shapes and sends a
RendererChangeEvent to all registered listeners. |
void |
setShapeStroke(java.awt.Stroke shapeStroke)
Sets the stroke for rendering shapes and sends a
RendererChangeEvent to all registered listeners. |
| Methods inherited from class org.jfree.chart.renderer.xy.AbstractXYItemRenderer |
addAnnotation, addAnnotation, addEntity, calculateDomainMarkerTextAnchorPoint, drawAnnotations, drawDomainGridLine, drawDomainLine, drawDomainMarker, drawItemLabel, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, getBaseItemLabelGenerator, getBaseToolTipGenerator, getDefaultEntityRadius, getDrawingSupplier, getItemLabelGenerator, getItemLabelGenerator, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPlot, getSeriesItemLabelGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getToolTipGenerator, getURLGenerator, isPointInRect, removeAnnotation, removeAnnotations, setBaseItemLabelGenerator, setBaseToolTipGenerator, setDefaultEntityRadius, setItemLabelGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesToolTipGenerator, setToolTipGenerator, setURLGenerator, updateCrosshairValues, updateCrosshairValues |
| Methods inherited from class org.jfree.chart.renderer.AbstractRenderer |
addChangeListener, calculateLabelAnchorPoint, fireChangeEvent, getAutoPopulateSeriesFillPaint, getAutoPopulateSeriesOutlinePaint, getAutoPopulateSeriesOutlineStroke, getAutoPopulateSeriesPaint, getAutoPopulateSeriesShape, getAutoPopulateSeriesStroke, getBaseCreateEntities, getBaseFillPaint, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getCreateEntities, getItemCreateEntity, getItemFillPaint, getItemLabelAnchorOffset, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, hashCode, hasListener, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setBaseCreateEntities, setBaseCreateEntities, setBaseFillPaint, setBaseFillPaint, setBaseItemLabelFont, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlinePaint, setBaseOutlineStroke, setBaseOutlineStroke, setBasePaint, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseShape, setBaseStroke, setBaseStroke, setCreateEntities, setCreateEntities, setFillPaint, setFillPaint, setItemLabelAnchorOffset, setItemLabelFont, setItemLabelFont, setItemLabelPaint, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlinePaint, setOutlineStroke, setOutlineStroke, setPaint, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, 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.xy.XYItemRenderer |
addAnnotation, addAnnotation, addChangeListener, drawAnnotations, drawDomainGridLine, drawDomainMarker, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, getBaseItemLabelFont, getBaseItemLabelGenerator, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getBaseToolTipGenerator, getItemLabelFont, getItemLabelFont, getItemLabelGenerator, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendItemLabelGenerator, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPlot, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesItemLabelFont, getSeriesItemLabelGenerator, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesToolTipGenerator, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, getToolTipGenerator, getURLGenerator, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeAnnotation, removeAnnotations, removeChangeListener, setBaseItemLabelFont, setBaseItemLabelGenerator, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlineStroke, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseStroke, setBaseToolTipGenerator, setItemLabelFont, setItemLabelGenerator, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setLegendItemLabelGenerator, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlineStroke, setPaint, setPlot, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesItemLabelFont, setSeriesItemLabelGenerator, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesStroke, setSeriesToolTipGenerator, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setStroke, setToolTipGenerator, setURLGenerator |
StackedXYAreaRenderer
public StackedXYAreaRenderer()
- Creates a new renderer.
StackedXYAreaRenderer
public StackedXYAreaRenderer(int type)
- Constructs a new renderer.
- Parameters:
type - the type of the renderer.
StackedXYAreaRenderer
public StackedXYAreaRenderer(int type,
XYToolTipGenerator labelGenerator,
XYURLGenerator urlGenerator)
- Constructs a new renderer. To specify the type of renderer, use one of
the constants:
SHAPES, LINES,
SHAPES_AND_LINES, AREA or
AREA_AND_SHAPES.
- Parameters:
type - the type of renderer.labelGenerator - the tool tip generator to use (null
is none).urlGenerator - the URL generator (null permitted).
getShapePaint
public java.awt.Paint getShapePaint()
- Returns the paint used for rendering shapes, or
null if
using series paints.
- Returns:
- The paint (possibly
null). - See Also:
setShapePaint(Paint)
setShapePaint
public void setShapePaint(java.awt.Paint shapePaint)
- Sets the paint for rendering shapes and sends a
RendererChangeEvent to all registered listeners.
- Parameters:
shapePaint - the paint (null permitted).- See Also:
getShapePaint()
getShapeStroke
public java.awt.Stroke getShapeStroke()
- Returns the stroke used for rendering shapes, or
null if
using series strokes.
- Returns:
- The stroke (possibly
null). - See Also:
setShapeStroke(Stroke)
setShapeStroke
public void setShapeStroke(java.awt.Stroke shapeStroke)
- Sets the stroke for rendering shapes and sends a
RendererChangeEvent to all registered listeners.
- Parameters:
shapeStroke - the stroke (null permitted).- See Also:
getShapeStroke()
initialise
public XYItemRendererState initialise(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D dataArea,
XYPlot plot,
XYDataset data,
PlotRenderingInfo info)
- Initialises the renderer. This method will be called before the first
item is rendered, giving the renderer an opportunity to initialise any
state information it wants to maintain.
- Specified by:
initialise in interface XYItemRenderer- Overrides:
initialise in class XYAreaRenderer
- 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:
- A state object that should be passed to subsequent calls to the
drawItem() method.
getPassCount
public int getPassCount()
- Returns the number of passes required by the renderer.
- Specified by:
getPassCount in interface XYItemRenderer- Overrides:
getPassCount in class AbstractXYItemRenderer
- Returns:
- 2.
findRangeBounds
public Range findRangeBounds(XYDataset dataset)
- Returns the range of values the renderer requires to display all the
items from the specified dataset.
- Specified by:
findRangeBounds in interface XYItemRenderer- Overrides:
findRangeBounds in class AbstractXYItemRenderer
- Parameters:
dataset - the dataset (null permitted).
- Returns:
- The range ([0.0, 0.0] if the dataset contains no values, and
null if the dataset is null).
- Throws:
java.lang.ClassCastException - if dataset is not an instance
of TableXYDataset.
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,
CrosshairState crosshairState,
int pass)
- Draws the visual representation of a single data item.
- Specified by:
drawItem in interface XYItemRenderer- Overrides:
drawItem in class XYAreaRenderer
- 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).crosshairState - information about crosshairs on a plot.pass - the pass index.
- Throws:
java.lang.ClassCastException - if state is not an instance of
StackedXYAreaRendererState or dataset
is not an instance of TableXYDataset.
getPreviousHeight
protected double getPreviousHeight(TableXYDataset dataset,
int series,
int index)
- Calculates the stacked value of the all series up to, but not including
series for the specified item. It returns 0.0 if
series is the first series, i.e. 0.
- Parameters:
dataset - the dataset.series - the series.index - the index.
- Returns:
- The cumulative value for all series' values up to but excluding
series for index.
equals
public boolean equals(java.lang.Object obj)
- Tests the renderer for equality with an arbitrary object.
- Overrides:
equals in class XYAreaRenderer
- Parameters:
obj - the object (null permitted).
- Returns:
- A boolean.
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 XYAreaRenderer
- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException - if the renderer cannot be cloned.