Class XYLineAndShapeRenderer
- java.lang.Object
-
- org.jfree.chart.renderer.AbstractRenderer
-
- org.jfree.chart.renderer.xy.AbstractXYItemRenderer
-
- org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,java.util.EventListener,AnnotationChangeListener,LegendItemSource,XYItemRenderer,PublicCloneable
- Direct Known Subclasses:
DefaultXYItemRenderer,DeviationRenderer,XYBezierRenderer,XYErrorRenderer,XYSplineRenderer,XYStepRenderer
public class XYLineAndShapeRenderer extends AbstractXYItemRenderer implements XYItemRenderer, java.lang.Cloneable, PublicCloneable, java.io.Serializable
A renderer that connects data points with lines and/or draws shapes at each data point. This renderer is designed for use with theXYPlotclass. The example shown here is generated by theXYLineAndShapeRendererDemo2.javaprogram included in the JFreeChart demo collection:

- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classXYLineAndShapeRenderer.StateRecords the state for the renderer.
-
Field Summary
Fields Modifier and Type Field Description private booleandefaultLinesVisibleThe default value returned by the getLinesVisible() method.private booleandefaultShapesFilledThe default value returned by the getShapeFilled() method.private booleandefaultShapesVisibleThe default value returned by the getShapeVisible() method.private booleandrawOutlinesA flag that controls whether outlines are drawn for shapes.private booleandrawSeriesLineAsPathA flag that controls whether or not each series is drawn as a single path.private java.awt.ShapelegendLineThe shape that is used to represent a line in the legend.private static longserialVersionUIDFor serialization.private BooleanListseriesLinesVisibleA table of flags that control (per series) whether or not lines are visible.private BooleanListseriesShapesFilledA table of flags that control (per series) whether or not shapes are filled.private BooleanListseriesShapesVisibleA table of flags that control (per series) whether or not shapes are visible.private booleanuseFillPaintA flag that controls whether the fill paint is used for filling shapes.private booleanuseOutlinePaintA flag that controls whether the outline paint is used for drawing shape outlines.-
Fields inherited from class org.jfree.chart.renderer.AbstractRenderer
DEFAULT_ITEM_LABEL_INSETS, DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, DEFAULT_PAINT, DEFAULT_SHAPE, DEFAULT_STROKE, DEFAULT_VALUE_LABEL_FONT, DEFAULT_VALUE_LABEL_PAINT, ZERO
-
-
Constructor Summary
Constructors Constructor Description XYLineAndShapeRenderer()Creates a new renderer with both lines and shapes visible.XYLineAndShapeRenderer(boolean lines, boolean shapes)Creates a new renderer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone()Returns a clone of the renderer.protected voiddrawFirstPassShape(java.awt.Graphics2D g2, int pass, int series, int item, java.awt.Shape shape)Draws the first pass shape.voiddrawItem(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.protected voiddrawPrimaryLine(XYItemRendererState state, java.awt.Graphics2D g2, XYPlot plot, XYDataset dataset, int pass, int series, int item, ValueAxis domainAxis, ValueAxis rangeAxis, java.awt.geom.Rectangle2D dataArea)Draws the item (first pass).protected voiddrawPrimaryLineAsPath(XYItemRendererState state, java.awt.Graphics2D g2, XYPlot plot, XYDataset dataset, int pass, int series, int item, ValueAxis domainAxis, ValueAxis rangeAxis, java.awt.geom.Rectangle2D dataArea)Draws the item (first pass).protected voiddrawSecondaryPass(java.awt.Graphics2D g2, XYPlot plot, XYDataset dataset, int pass, int series, int item, ValueAxis domainAxis, java.awt.geom.Rectangle2D dataArea, ValueAxis rangeAxis, CrosshairState crosshairState, EntityCollection entities)Draws the item shapes and adds chart entities (second pass).booleanequals(java.lang.Object obj)Tests this renderer for equality with an arbitrary object.booleangetDefaultLinesVisible()Returns the default 'lines visible' attribute.booleangetDefaultShapesFilled()Returns the default 'shape filled' attribute.booleangetDefaultShapesVisible()Returns the default 'shape visible' attribute.booleangetDrawOutlines()Returnstrueif outlines should be drawn for shapes, andfalseotherwise.booleangetDrawSeriesLineAsPath()Returns a flag that controls whether each series is drawn as a single path.booleangetItemLineVisible(int series, int item)Returns the flag used to control whether or not the shape for an item is visible.booleangetItemShapeFilled(int series, int item)Returns the flag used to control whether or not the shape for an item is filled.booleangetItemShapeVisible(int series, int item)Returns the flag used to control whether or not the shape for an item is visible.LegendItemgetLegendItem(int datasetIndex, int series)Returns a legend item for the specified series.java.awt.ShapegetLegendLine()Returns the shape used to represent a line in the legend.intgetPassCount()Returns the number of passes through the data that the renderer requires in order to draw the chart.java.lang.BooleangetSeriesLinesVisible(int series)Returns the flag used to control whether or not the lines for a series are visible.java.lang.BooleangetSeriesShapesFilled(int series)Returns the flag used to control whether or not the shapes for a series are filled.java.lang.BooleangetSeriesShapesVisible(int series)Returns the flag used to control whether or not the shapes for a series are visible.booleangetUseFillPaint()Returnstrueif the renderer should use the fill paint setting to fill shapes, andfalseif it should just use the regular paint.booleangetUseOutlinePaint()Returnstrueif the renderer should use the outline paint setting to draw shape outlines, andfalseif it should just use the regular paint.inthashCode()Returns a hash code for this instance.XYItemRendererStateinitialise(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, XYPlot plot, XYDataset data, PlotRenderingInfo info)Initialises the renderer.protected booleanisItemPass(int pass)Returnstrueif the specified pass is the one for drawing items.protected booleanisLinePass(int pass)Returnstrueif the specified pass is the one for drawing lines.private voidreadObject(java.io.ObjectInputStream stream)Provides serialization support.voidsetDefaultLinesVisible(boolean flag)Sets the default 'lines visible' flag and sends aRendererChangeEventto all registered listeners.voidsetDefaultShapesFilled(boolean flag)Sets the default 'shapes filled' flag and sends aRendererChangeEventto all registered listeners.voidsetDefaultShapesVisible(boolean flag)Sets the default 'shapes visible' flag and sends aRendererChangeEventto all registered listeners.voidsetDrawOutlines(boolean flag)Sets the flag that controls whether outlines are drawn for shapes, and sends aRendererChangeEventto all registered listeners.voidsetDrawSeriesLineAsPath(boolean flag)Sets the flag that controls whether each series is drawn as a single path and sends aRendererChangeEventto all registered listeners.voidsetLegendLine(java.awt.Shape line)Sets the shape used as a line in each legend item and sends aRendererChangeEventto all registered listeners.voidsetSeriesLinesVisible(int series, boolean visible)Sets the 'lines visible' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesLinesVisible(int series, java.lang.Boolean flag)Sets the 'lines visible' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesShapesFilled(int series, boolean flag)Sets the 'shapes filled' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesShapesFilled(int series, java.lang.Boolean flag)Sets the 'shapes filled' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesShapesVisible(int series, boolean visible)Sets the 'shapes visible' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesShapesVisible(int series, java.lang.Boolean flag)Sets the 'shapes visible' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetUseFillPaint(boolean flag)Sets the flag that controls whether the fill paint is used to fill shapes, and sends aRendererChangeEventto all registered listeners.voidsetUseOutlinePaint(boolean flag)Sets the flag that controls whether the outline paint is used to draw shape outlines, and sends aRendererChangeEventto all registered listeners.private voidwriteObject(java.io.ObjectOutputStream stream)Provides serialization support.-
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, 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, getItemLabelInsets, 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, hasListener, isComputeItemLabelContrastColor, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupLegendShape, lookupLegendTextFont, lookupLegendTextPaint, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setComputeItemLabelContrastColor, 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, setItemLabelInsets, 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, 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 Detail
-
serialVersionUID
private static final long serialVersionUID
For serialization.- See Also:
- Constant Field Values
-
seriesLinesVisible
private BooleanList seriesLinesVisible
A table of flags that control (per series) whether or not lines are visible.
-
defaultLinesVisible
private boolean defaultLinesVisible
The default value returned by the getLinesVisible() method.
-
legendLine
private transient java.awt.Shape legendLine
The shape that is used to represent a line in the legend.
-
seriesShapesVisible
private BooleanList seriesShapesVisible
A table of flags that control (per series) whether or not shapes are visible.
-
defaultShapesVisible
private boolean defaultShapesVisible
The default value returned by the getShapeVisible() method.
-
seriesShapesFilled
private BooleanList seriesShapesFilled
A table of flags that control (per series) whether or not shapes are filled.
-
defaultShapesFilled
private boolean defaultShapesFilled
The default value returned by the getShapeFilled() method.
-
drawOutlines
private boolean drawOutlines
A flag that controls whether outlines are drawn for shapes.
-
useFillPaint
private boolean useFillPaint
A flag that controls whether the fill paint is used for filling shapes.
-
useOutlinePaint
private boolean useOutlinePaint
A flag that controls whether the outline paint is used for drawing shape outlines.
-
drawSeriesLineAsPath
private boolean drawSeriesLineAsPath
A flag that controls whether or not each series is drawn as a single path.
-
-
Constructor Detail
-
XYLineAndShapeRenderer
public XYLineAndShapeRenderer()
Creates a new renderer with both lines and shapes visible.
-
XYLineAndShapeRenderer
public XYLineAndShapeRenderer(boolean lines, boolean shapes)Creates a new renderer.- Parameters:
lines- lines visible?shapes- shapes visible?
-
-
Method Detail
-
getDrawSeriesLineAsPath
public boolean getDrawSeriesLineAsPath()
Returns a flag that controls whether each series is drawn as a single path. The default value isfalse.- Returns:
- A boolean.
- See Also:
setDrawSeriesLineAsPath(boolean)
-
setDrawSeriesLineAsPath
public void setDrawSeriesLineAsPath(boolean flag)
Sets the flag that controls whether each series is drawn as a single path and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
getDrawSeriesLineAsPath()
-
getPassCount
public int getPassCount()
Returns the number of passes through the data that the renderer requires in order to draw the chart. Most charts will require a single pass, but some require two passes.- Specified by:
getPassCountin interfaceXYItemRenderer- Overrides:
getPassCountin classAbstractXYItemRenderer- Returns:
- The pass count.
-
getItemLineVisible
public boolean getItemLineVisible(int series, int item)Returns the flag used to control whether or not the shape for an item is visible.- Parameters:
series- the series index (zero-based).item- the item index (zero-based).- Returns:
- A boolean.
-
getSeriesLinesVisible
public java.lang.Boolean getSeriesLinesVisible(int series)
Returns the flag used to control whether or not the lines for a series are visible.- Parameters:
series- the series index (zero-based).- Returns:
- The flag (possibly
null). - See Also:
setSeriesLinesVisible(int, Boolean)
-
setSeriesLinesVisible
public void setSeriesLinesVisible(int series, java.lang.Boolean flag)Sets the 'lines visible' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).flag- the flag (nullpermitted).- See Also:
getSeriesLinesVisible(int)
-
setSeriesLinesVisible
public void setSeriesLinesVisible(int series, boolean visible)Sets the 'lines visible' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).visible- the flag.- See Also:
getSeriesLinesVisible(int)
-
getDefaultLinesVisible
public boolean getDefaultLinesVisible()
Returns the default 'lines visible' attribute.- Returns:
- The default flag.
- See Also:
setDefaultLinesVisible(boolean)
-
setDefaultLinesVisible
public void setDefaultLinesVisible(boolean flag)
Sets the default 'lines visible' flag and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
getDefaultLinesVisible()
-
getLegendLine
public java.awt.Shape getLegendLine()
Returns the shape used to represent a line in the legend.- Returns:
- The legend line (never
null). - See Also:
setLegendLine(Shape)
-
setLegendLine
public void setLegendLine(java.awt.Shape line)
Sets the shape used as a line in each legend item and sends aRendererChangeEventto all registered listeners.- Parameters:
line- the line (nullnot permitted).- See Also:
getLegendLine()
-
getItemShapeVisible
public boolean getItemShapeVisible(int series, int item)Returns the flag used to control whether or not the shape for an item is visible.The default implementation passes control to the
getSeriesShapesVisible()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.
-
getSeriesShapesVisible
public java.lang.Boolean getSeriesShapesVisible(int series)
Returns the flag used to control whether or not the shapes for a series are visible.- Parameters:
series- the series index (zero-based).- Returns:
- A boolean.
- See Also:
setSeriesShapesVisible(int, Boolean)
-
setSeriesShapesVisible
public void setSeriesShapesVisible(int series, boolean visible)Sets the 'shapes visible' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).visible- the flag.- See Also:
getSeriesShapesVisible(int)
-
setSeriesShapesVisible
public void setSeriesShapesVisible(int series, java.lang.Boolean flag)Sets the 'shapes visible' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).flag- the flag.- See Also:
getSeriesShapesVisible(int)
-
getDefaultShapesVisible
public boolean getDefaultShapesVisible()
Returns the default 'shape visible' attribute.- Returns:
- The default flag.
- See Also:
setDefaultShapesVisible(boolean)
-
setDefaultShapesVisible
public void setDefaultShapesVisible(boolean flag)
Sets the default 'shapes visible' flag and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
getDefaultShapesVisible()
-
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
getSeriesShapesFilledmethod. 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.
-
getSeriesShapesFilled
public java.lang.Boolean getSeriesShapesFilled(int series)
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.
- See Also:
setSeriesShapesFilled(int, Boolean)
-
setSeriesShapesFilled
public void setSeriesShapesFilled(int series, boolean flag)Sets the 'shapes filled' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).flag- the flag.- See Also:
getSeriesShapesFilled(int)
-
setSeriesShapesFilled
public void setSeriesShapesFilled(int series, java.lang.Boolean flag)Sets the 'shapes filled' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).flag- the flag.- See Also:
getSeriesShapesFilled(int)
-
getDefaultShapesFilled
public boolean getDefaultShapesFilled()
Returns the default 'shape filled' attribute.- Returns:
- The default flag.
- See Also:
setDefaultShapesFilled(boolean)
-
setDefaultShapesFilled
public void setDefaultShapesFilled(boolean flag)
Sets the default 'shapes filled' flag and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
getDefaultShapesFilled()
-
getDrawOutlines
public boolean getDrawOutlines()
Returnstrueif outlines should be drawn for shapes, andfalseotherwise.- Returns:
- A boolean.
- See Also:
setDrawOutlines(boolean)
-
setDrawOutlines
public void setDrawOutlines(boolean flag)
Sets the flag that controls whether outlines are drawn for shapes, and sends aRendererChangeEventto all registered listeners.In some cases, shapes look better if they do NOT have an outline, but this flag allows you to set your own preference.
- Parameters:
flag- the flag.- See Also:
getDrawOutlines()
-
getUseFillPaint
public boolean getUseFillPaint()
Returnstrueif the renderer should use the fill paint setting to fill shapes, andfalseif it should just use the regular paint.Refer to
XYLineAndShapeRendererDemo2.javato see the effect of this flag.- Returns:
- A boolean.
- See Also:
setUseFillPaint(boolean),getUseOutlinePaint()
-
setUseFillPaint
public void setUseFillPaint(boolean flag)
Sets the flag that controls whether the fill paint is used to fill shapes, and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
getUseFillPaint()
-
getUseOutlinePaint
public boolean getUseOutlinePaint()
Returnstrueif the renderer should use the outline paint setting to draw shape outlines, andfalseif it should just use the regular paint.- Returns:
- A boolean.
- See Also:
setUseOutlinePaint(boolean),getUseFillPaint()
-
setUseOutlinePaint
public void setUseOutlinePaint(boolean flag)
Sets the flag that controls whether the outline paint is used to draw shape outlines, and sends aRendererChangeEventto all registered listeners.Refer to
XYLineAndShapeRendererDemo2.javato see the effect of this flag.- Parameters:
flag- the flag.- See Also:
getUseOutlinePaint()
-
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. The renderer can do nothing if it chooses.
- Specified by:
initialisein interfaceXYItemRenderer- Overrides:
initialisein 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(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:
drawItemin 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 (nullpermitted).pass- the pass index.
-
isLinePass
protected boolean isLinePass(int pass)
Returnstrueif the specified pass is the one for drawing lines.- Parameters:
pass- the pass.- Returns:
- A boolean.
-
isItemPass
protected boolean isItemPass(int pass)
Returnstrueif the specified pass is the one for drawing items.- Parameters:
pass- the pass.- Returns:
- A boolean.
-
drawPrimaryLine
protected void drawPrimaryLine(XYItemRendererState state, java.awt.Graphics2D g2, XYPlot plot, XYDataset dataset, int pass, int series, int item, ValueAxis domainAxis, ValueAxis rangeAxis, java.awt.geom.Rectangle2D dataArea)
Draws the item (first pass). This method draws the lines connecting the items.- Parameters:
g2- the graphics device.state- the renderer state.dataArea- the area within which the data is being drawn.plot- the plot (can be used to obtain standard color information etc).domainAxis- the domain axis.rangeAxis- the range axis.dataset- the dataset.pass- the pass.series- the series index (zero-based).item- the item index (zero-based).
-
drawFirstPassShape
protected void drawFirstPassShape(java.awt.Graphics2D g2, int pass, int series, int item, java.awt.Shape shape)Draws the first pass shape.- Parameters:
g2- the graphics device.pass- the pass.series- the series index.item- the item index.shape- the shape.
-
drawPrimaryLineAsPath
protected void drawPrimaryLineAsPath(XYItemRendererState state, java.awt.Graphics2D g2, XYPlot plot, XYDataset dataset, int pass, int series, int item, ValueAxis domainAxis, ValueAxis rangeAxis, java.awt.geom.Rectangle2D dataArea)
Draws the item (first pass). This method draws the lines connecting the items. Instead of drawing separate lines, aGeneralPathis constructed and drawn at the end of the series painting.- Parameters:
g2- the graphics device.state- the renderer state.plot- the plot (can be used to obtain standard color information etc).dataset- the dataset.pass- the pass.series- the series index (zero-based).item- the item index (zero-based).domainAxis- the domain axis.rangeAxis- the range axis.dataArea- the area within which the data is being drawn.
-
drawSecondaryPass
protected void drawSecondaryPass(java.awt.Graphics2D g2, XYPlot plot, XYDataset dataset, int pass, int series, int item, ValueAxis domainAxis, java.awt.geom.Rectangle2D dataArea, ValueAxis rangeAxis, CrosshairState crosshairState, EntityCollection entities)Draws the item shapes and adds chart entities (second pass). This method draws the shapes which mark the item positions. Ifentitiesis notnullit will be populated with entity information for points that fall within the data area.- Parameters:
g2- the graphics device.plot- the plot (can be used to obtain standard color information etc).domainAxis- the domain axis.dataArea- the area within which the data is being drawn.rangeAxis- the range axis.dataset- the dataset.pass- the pass.series- the series index (zero-based).item- the item index (zero-based).crosshairState- the crosshair state.entities- the entity collection.
-
getLegendItem
public LegendItem getLegendItem(int datasetIndex, int series)
Returns a legend item for the specified series.- Specified by:
getLegendItemin interfaceXYItemRenderer- Overrides:
getLegendItemin classAbstractXYItemRenderer- Parameters:
datasetIndex- the dataset index (zero-based).series- the series index (zero-based).- Returns:
- A legend item for the series (possibly
null).
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionReturns a clone of the renderer.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classAbstractXYItemRenderer- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException- if the clone cannot be created.
-
equals
public boolean equals(java.lang.Object obj)
Tests this renderer for equality with an arbitrary object.- Overrides:
equalsin classAbstractXYItemRenderer- Parameters:
obj- the object (nullpermitted).- Returns:
trueorfalse.
-
hashCode
public int hashCode()
Returns a hash code for this instance.- Overrides:
hashCodein classAbstractXYItemRenderer- Returns:
- A hash code for this instance.
-
readObject
private void readObject(java.io.ObjectInputStream stream) throws java.io.IOException, java.lang.ClassNotFoundExceptionProvides serialization support.- Parameters:
stream- the input stream.- Throws:
java.io.IOException- if there is an I/O error.java.lang.ClassNotFoundException- if there is a classpath problem.
-
writeObject
private void writeObject(java.io.ObjectOutputStream stream) throws java.io.IOExceptionProvides serialization support.- Parameters:
stream- the output stream.- Throws:
java.io.IOException- if there is an I/O error.
-
-