java.lang.Object
org.jfree.chart.renderer.AbstractRenderer
org.jfree.chart.renderer.xy.AbstractXYItemRenderer
org.jfree.chart.renderer.xy.StandardXYItemRenderer
- All Implemented Interfaces:
Serializable
,Cloneable
,EventListener
,AnnotationChangeListener
,LegendItemSource
,XYItemRenderer
,PublicCloneable
- Direct Known Subclasses:
CyclicXYItemRenderer
public class StandardXYItemRenderer
extends AbstractXYItemRenderer
implements XYItemRenderer, Cloneable, PublicCloneable, Serializable
Standard item renderer for an
XYPlot
. This class can draw (a)
shapes at each point, or (b) lines between points, or (c) both shapes and
lines.
This renderer has been retained for historical reasons and, in general, you
should use the XYLineAndShapeRenderer
class instead.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Records the state for the renderer. -
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Constant for the type of rendering (discontinuous lines).static final int
Constant for the type of rendering (discontinuous lines).static final int
Constant for the type of rendering (images only).static final int
Constant for the type of rendering (lines only).static final int
Constant for the type of rendering (shapes only).static final int
Constant for the type of rendering (shapes and lines).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
ConstructorDescriptionConstructs a new renderer.StandardXYItemRenderer
(int type) Constructs a new renderer.StandardXYItemRenderer
(int type, XYToolTipGenerator toolTipGenerator) Constructs a new renderer.StandardXYItemRenderer
(int type, XYToolTipGenerator toolTipGenerator, XYURLGenerator urlGenerator) Constructs a new renderer. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Returns a clone of the renderer.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.boolean
Tests this renderer for equality with another object.boolean
Returns the base 'shape filled' attribute.boolean
Returns true if shapes are being plotted by the renderer.boolean
Returns a flag that controls whether or not each series is drawn as a single path.double
Returns the gap threshold for discontinuous lines.Returns the gap threshold type (relative or absolute).protected Image
Returns the image used to draw a single data item.protected Point
getImageHotspot
(Plot plot, int series, int item, double x, double y, Image image) Returns the hotspot of the image used to draw a single data item.boolean
getItemShapeFilled
(int series, int item) Returns the flag used to control whether or not the shape for an item is filled.getLegendItem
(int datasetIndex, int series) Returns a legend item for a series.Returns the shape used to represent a line in the legend.boolean
Returns a flag that controls whether or not the renderer shows discontinuous lines.boolean
Returns true if images are being plotted by the renderer.boolean
Returns true if lines are being plotted by the renderer.getSeriesShapesFilled
(int series) Returns the flag used to control whether or not the shapes for a series are filled.initialise
(Graphics2D g2, Rectangle2D dataArea, XYPlot plot, XYDataset data, PlotRenderingInfo info) Initialises the renderer.void
setBaseShapesFilled
(boolean flag) Sets the base 'shapes filled' flag and sends aRendererChangeEvent
to all registered listeners.void
setBaseShapesVisible
(boolean flag) Sets the flag that controls whether or not a shape is plotted at each data point.void
setDrawSeriesLineAsPath
(boolean flag) Sets the flag that controls whether or not each series is drawn as a single path.void
setGapThreshold
(double t) Sets the gap threshold for discontinuous lines and sends aRendererChangeEvent
to all registered listeners.void
setGapThresholdType
(UnitType thresholdType) Sets the gap threshold type and sends aRendererChangeEvent
to all registered listeners.void
setLegendLine
(Shape line) Sets the shape used as a line in each legend item and sends aRendererChangeEvent
to all registered listeners.void
setPlotDiscontinuous
(boolean flag) Sets the flag that controls whether or not the renderer shows discontinuous lines, and sends aRendererChangeEvent
to all registered listeners.void
setPlotImages
(boolean flag) Sets the flag that controls whether or not an image is drawn at each data point and sends aRendererChangeEvent
to all registered listeners.void
setPlotLines
(boolean flag) Sets the flag that controls whether or not a line is plotted between each data point and sends aRendererChangeEvent
to all registered listeners.void
setSeriesShapesFilled
(int series, Boolean flag) Sets the 'shapes filled' flag for a series and sends aRendererChangeEvent
to all registered listeners.Methods inherited from class org.jfree.chart.renderer.xy.AbstractXYItemRenderer
addAnnotation, addAnnotation, addEntity, annotationChanged, beginElementGroup, calculateDomainMarkerTextAnchorPoint, drawAnnotations, drawDomainLine, drawDomainMarker, drawItemLabel, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, findDomainBounds, findRangeBounds, findRangeBounds, getAnnotations, getDefaultItemLabelGenerator, getDefaultToolTipGenerator, getDrawingSupplier, getItemLabelGenerator, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPassCount, getPlot, getSeriesItemLabelGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getURLGenerator, lineTo, moveTo, removeAnnotation, removeAnnotations, setDefaultItemLabelGenerator, setDefaultToolTipGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesToolTipGenerator, setURLGenerator, updateCrosshairValues
Methods inherited from class org.jfree.chart.renderer.AbstractRenderer
addChangeListener, beginElementGroup, calculateLabelAnchorPoint, clearSeriesPaints, clearSeriesStrokes, endElementGroup, fireChangeEvent, getAutoPopulateSeriesFillPaint, getAutoPopulateSeriesOutlinePaint, getAutoPopulateSeriesOutlineStroke, getAutoPopulateSeriesPaint, getAutoPopulateSeriesShape, getAutoPopulateSeriesStroke, getDataBoundsIncludesVisibleSeriesOnly, getDefaultCreateEntities, getDefaultEntityRadius, getDefaultFillPaint, getDefaultItemLabelFont, getDefaultItemLabelPaint, getDefaultItemLabelsVisible, getDefaultLegendShape, getDefaultLegendTextFont, getDefaultLegendTextPaint, getDefaultNegativeItemLabelPosition, getDefaultOutlinePaint, getDefaultOutlineStroke, getDefaultPaint, getDefaultPositiveItemLabelPosition, getDefaultSeriesVisible, getDefaultSeriesVisibleInLegend, getDefaultShape, getDefaultStroke, getItemCreateEntity, getItemFillPaint, getItemLabelAnchorOffset, getItemLabelFont, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendShape, getLegendTextFont, getLegendTextPaint, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisibleInLegend, getTreatLegendShapeAsLine, hashCode, hasListener, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupLegendShape, lookupLegendTextFont, lookupLegendTextPaint, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setDataBoundsIncludesVisibleSeriesOnly, setDefaultCreateEntities, setDefaultCreateEntities, setDefaultEntityRadius, setDefaultFillPaint, setDefaultFillPaint, setDefaultItemLabelFont, setDefaultItemLabelFont, setDefaultItemLabelPaint, setDefaultItemLabelPaint, setDefaultItemLabelsVisible, setDefaultItemLabelsVisible, setDefaultLegendShape, setDefaultLegendTextFont, setDefaultLegendTextPaint, setDefaultNegativeItemLabelPosition, setDefaultNegativeItemLabelPosition, setDefaultOutlinePaint, setDefaultOutlinePaint, setDefaultOutlineStroke, setDefaultOutlineStroke, setDefaultPaint, setDefaultPaint, setDefaultPositiveItemLabelPosition, setDefaultPositiveItemLabelPosition, setDefaultSeriesVisible, setDefaultSeriesVisible, setDefaultSeriesVisibleInLegend, setDefaultSeriesVisibleInLegend, setDefaultShape, setDefaultShape, setDefaultStroke, setDefaultStroke, setItemLabelAnchorOffset, setLegendShape, setLegendTextFont, setLegendTextPaint, 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, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setTreatLegendShapeAsLine
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jfree.chart.LegendItemSource
getLegendItems
Methods inherited from interface org.jfree.chart.renderer.xy.XYItemRenderer
addAnnotation, addAnnotation, addChangeListener, drawAnnotations, drawDomainLine, drawDomainMarker, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, findRangeBounds, getDefaultCreateEntities, getDefaultFillPaint, getDefaultItemLabelFont, getDefaultItemLabelGenerator, getDefaultItemLabelPaint, getDefaultItemLabelsVisible, getDefaultNegativeItemLabelPosition, getDefaultOutlinePaint, getDefaultOutlineStroke, getDefaultPaint, getDefaultPositiveItemLabelPosition, getDefaultSeriesVisible, getDefaultSeriesVisibleInLegend, getDefaultShape, getDefaultStroke, getDefaultToolTipGenerator, getItemCreateEntity, getItemFillPaint, getItemLabelFont, getItemLabelGenerator, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendItemLabelGenerator, getNegativeItemLabelPosition, getPassCount, getPlot, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelGenerator, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesToolTipGenerator, getSeriesVisible, getSeriesVisibleInLegend, getToolTipGenerator, getURLGenerator, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeAnnotation, removeAnnotations, removeChangeListener, setDefaultCreateEntities, setDefaultCreateEntities, setDefaultFillPaint, setDefaultFillPaint, setDefaultItemLabelFont, setDefaultItemLabelGenerator, setDefaultItemLabelPaint, setDefaultItemLabelsVisible, setDefaultItemLabelsVisible, setDefaultNegativeItemLabelPosition, setDefaultNegativeItemLabelPosition, setDefaultOutlinePaint, setDefaultOutlinePaint, setDefaultOutlineStroke, setDefaultOutlineStroke, setDefaultPaint, setDefaultPaint, setDefaultPositiveItemLabelPosition, setDefaultPositiveItemLabelPosition, setDefaultSeriesVisible, setDefaultSeriesVisible, setDefaultSeriesVisibleInLegend, setDefaultSeriesVisibleInLegend, setDefaultShape, setDefaultShape, setDefaultStroke, setDefaultStroke, setDefaultToolTipGenerator, setLegendItemLabelGenerator, setPlot, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelGenerator, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesToolTipGenerator, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setURLGenerator
-
Field Details
-
SHAPES
public static final int SHAPESConstant for the type of rendering (shapes only).- See Also:
-
LINES
public static final int LINESConstant for the type of rendering (lines only).- See Also:
-
SHAPES_AND_LINES
public static final int SHAPES_AND_LINESConstant for the type of rendering (shapes and lines).- See Also:
-
IMAGES
public static final int IMAGESConstant for the type of rendering (images only).- See Also:
-
DISCONTINUOUS
public static final int DISCONTINUOUSConstant for the type of rendering (discontinuous lines).- See Also:
-
DISCONTINUOUS_LINES
public static final int DISCONTINUOUS_LINESConstant for the type of rendering (discontinuous lines).- See Also:
-
-
Constructor Details
-
StandardXYItemRenderer
public StandardXYItemRenderer()Constructs a new renderer. -
StandardXYItemRenderer
public StandardXYItemRenderer(int type) Constructs a new renderer. To specify the type of renderer, use one of the constants:SHAPES
,LINES
orSHAPES_AND_LINES
.- Parameters:
type
- the type.
-
StandardXYItemRenderer
Constructs a new renderer. To specify the type of renderer, use one of the constants:SHAPES
,LINES
orSHAPES_AND_LINES
.- Parameters:
type
- the type of renderer.toolTipGenerator
- the item label generator (null
permitted).
-
StandardXYItemRenderer
public StandardXYItemRenderer(int type, XYToolTipGenerator toolTipGenerator, XYURLGenerator urlGenerator) Constructs a new renderer. To specify the type of renderer, use one of the constants:SHAPES
,LINES
orSHAPES_AND_LINES
.- Parameters:
type
- the type of renderer.toolTipGenerator
- the item label generator (null
permitted).urlGenerator
- the URL generator.
-
-
Method Details
-
getBaseShapesVisible
public boolean getBaseShapesVisible()Returns true if shapes are being plotted by the renderer.- Returns:
true
if shapes are being plotted by the renderer.- See Also:
-
setBaseShapesVisible
public void setBaseShapesVisible(boolean flag) Sets the flag that controls whether or not a shape is plotted at each data point.- Parameters:
flag
- the flag.- See Also:
-
getItemShapeFilled
public boolean getItemShapeFilled(int series, int item) Returns the flag used to control whether or not the shape for an item is filled.The default implementation passes control to the
getSeriesShapesFilled()
method. You can override this method if you require different behaviour.- Parameters:
series
- the series index (zero-based).item
- the item index (zero-based).- Returns:
- A boolean.
- See Also:
-
getSeriesShapesFilled
Returns the flag used to control whether or not the shapes for a series are filled.- Parameters:
series
- the series index (zero-based).- Returns:
- A boolean.
-
setSeriesShapesFilled
Sets the 'shapes filled' flag for a series and sends aRendererChangeEvent
to all registered listeners.- Parameters:
series
- the series index (zero-based).flag
- the flag.- See Also:
-
getBaseShapesFilled
public boolean getBaseShapesFilled()Returns the base 'shape filled' attribute.- Returns:
- The base flag.
- See Also:
-
setBaseShapesFilled
public void setBaseShapesFilled(boolean flag) Sets the base 'shapes filled' flag and sends aRendererChangeEvent
to all registered listeners.- Parameters:
flag
- the flag.- See Also:
-
getPlotLines
public boolean getPlotLines()Returns true if lines are being plotted by the renderer.- Returns:
true
if lines are being plotted by the renderer.- See Also:
-
setPlotLines
public void setPlotLines(boolean flag) Sets the flag that controls whether or not a line is plotted between each data point and sends aRendererChangeEvent
to all registered listeners.- Parameters:
flag
- the flag.- See Also:
-
getGapThresholdType
Returns the gap threshold type (relative or absolute).- Returns:
- The type.
- See Also:
-
setGapThresholdType
Sets the gap threshold type and sends aRendererChangeEvent
to all registered listeners.- Parameters:
thresholdType
- the type (null
not permitted).- See Also:
-
getGapThreshold
public double getGapThreshold()Returns the gap threshold for discontinuous lines.- Returns:
- The gap threshold.
- See Also:
-
setGapThreshold
public void setGapThreshold(double t) Sets the gap threshold for discontinuous lines and sends aRendererChangeEvent
to all registered listeners.- Parameters:
t
- the threshold.- See Also:
-
getPlotImages
public boolean getPlotImages()Returns true if images are being plotted by the renderer.- Returns:
true
if images are being plotted by the renderer.- See Also:
-
setPlotImages
public void setPlotImages(boolean flag) Sets the flag that controls whether or not an image is drawn at each data point and sends aRendererChangeEvent
to all registered listeners.- Parameters:
flag
- the flag.- See Also:
-
getPlotDiscontinuous
public boolean getPlotDiscontinuous()Returns a flag that controls whether or not the renderer shows discontinuous lines.- Returns:
true
if lines should be discontinuous.
-
setPlotDiscontinuous
public void setPlotDiscontinuous(boolean flag) Sets the flag that controls whether or not the renderer shows discontinuous lines, and sends aRendererChangeEvent
to all registered listeners.- Parameters:
flag
- the new flag value.
-
getDrawSeriesLineAsPath
public boolean getDrawSeriesLineAsPath()Returns a flag that controls whether or not each series is drawn as a single path.- Returns:
- A boolean.
- See Also:
-
setDrawSeriesLineAsPath
public void setDrawSeriesLineAsPath(boolean flag) Sets the flag that controls whether or not each series is drawn as a single path.- Parameters:
flag
- the flag.- See Also:
-
getLegendLine
Returns the shape used to represent a line in the legend.- Returns:
- The legend line (never
null
). - See Also:
-
setLegendLine
Sets the shape used as a line in each legend item and sends aRendererChangeEvent
to all registered listeners.- Parameters:
line
- the line (null
not permitted).- See Also:
-
getLegendItem
Returns a legend item for a series.- Specified by:
getLegendItem
in interfaceXYItemRenderer
- Overrides:
getLegendItem
in classAbstractXYItemRenderer
- Parameters:
datasetIndex
- the dataset index (zero-based).series
- the series index (zero-based).- Returns:
- A legend item for the series.
-
initialise
public XYItemRendererState initialise(Graphics2D g2, 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. The renderer can do nothing if it chooses.
- Specified by:
initialise
in interfaceXYItemRenderer
- Overrides:
initialise
in classAbstractXYItemRenderer
- 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 renderer state.
-
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.- Specified by:
drawItem
in interfaceXYItemRenderer
- 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
- crosshair information for the plot (null
permitted).pass
- the pass index.
-
equals
Tests this renderer for equality with another object.- Overrides:
equals
in classAbstractXYItemRenderer
- Parameters:
obj
- the object (null
permitted).- Returns:
- A boolean.
-
clone
Returns a clone of the renderer.- Specified by:
clone
in interfacePublicCloneable
- Overrides:
clone
in classAbstractXYItemRenderer
- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- if the renderer cannot be cloned.
-
getImage
Returns the image used to draw a single data item.- Parameters:
plot
- the plot (can be used to obtain standard color information etc).series
- the series index.item
- the item index.x
- the x value of the item.y
- the y value of the item.- Returns:
- The image.
- See Also:
-
getImageHotspot
Returns the hotspot of the image used to draw a single data item. The hotspot is the point relative to the top left of the image that should indicate the data item. The default is the center of the image.- Parameters:
plot
- the plot (can be used to obtain standard color information etc).image
- the image (can be used to get size information about the image)series
- the series indexitem
- the item indexx
- the x value of the itemy
- the y value of the item- Returns:
- The hotspot used to draw the data item.
-