Class LineAndShapeRenderer
java.lang.Object
org.jfree.chart.renderer.AbstractRenderer
org.jfree.chart.renderer.category.AbstractCategoryItemRenderer
org.jfree.chart.renderer.category.LineAndShapeRenderer
- All Implemented Interfaces:
Serializable,Cloneable,LegendItemSource,CategoryItemRenderer,PublicCloneable
- Direct Known Subclasses:
DefaultCategoryItemRenderer,StatisticalLineAndShapeRenderer
public class LineAndShapeRenderer
extends AbstractCategoryItemRenderer
implements Cloneable, PublicCloneable, Serializable
A renderer that draws shapes for each data item, and lines between data
items (for use with the

CategoryPlot class).
The example shown here is generated by the LineChartDemo1.java
program included in the JFreeChart Demo Collection:

- See Also:
-
Field Summary
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
ConstructorsConstructorDescriptionCreates a renderer with both lines and shapes visible by default.LineAndShapeRenderer(boolean lines, boolean shapes) Creates a new renderer with lines and/or shapes visible. -
Method Summary
Modifier and TypeMethodDescriptionclone()Returns an independent copy of the renderer.voiddrawItem(Graphics2D g2, CategoryItemRendererState state, Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset, int row, int column, int pass) Draw a single data item.booleanTests this renderer for equality with an arbitrary object.booleanReturns the default 'lines visible' attribute.booleanReturns the default 'shape filled' attribute.booleanReturns the default 'shape visible' attribute.booleanReturnstrueif outlines should be drawn for shapes, andfalseotherwise.booleangetItemLineVisible(int series, int item) Returns the flag used to control whether or not the line for an item is visible.doubleReturns the item margin, which is the gap between items within a category (expressed as a percentage of the overall category width).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.getLegendItem(int datasetIndex, int series) Returns a legend item for a series.intThis renderer uses two passes to draw the data.getSeriesLinesVisible(int series) Returns the flag used to control whether or not the lines for a series are visible.booleangetSeriesShapesFilled(int series) Returns the flag used to control whether or not the shapes for a series are filled.getSeriesShapesVisible(int series) Returns the flag used to control whether or not the shapes for a series are visible.booleanReturnstrueif the renderer should use the fill paint setting to fill shapes, andfalseif it should just use the regular paint.booleanReturns the flag that controls whether the outline paint is used for shape outlines.booleanReturns the flag that controls whether or not the x-position for each data item is offset within the category according to the series.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.voidsetItemMargin(double margin) Sets the item margin, which is the gap between items within a category (expressed as a percentage of the overall category width), 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, Boolean flag) Sets the 'lines visible' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesShapesFilled(int series, boolean filled) Sets the 'shapes filled' flag for a series and sends aRendererChangeEventto all registered listeners.voidsetSeriesShapesFilled(int series, Boolean filled) 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, 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 use) Sets the flag that controls whether the outline paint is used for shape outlines, and sends aRendererChangeEventto all registered listeners.voidsetUseSeriesOffset(boolean offset) Sets the flag that controls whether or not the x-position for each data item is offset within its category according to the series, and sends aRendererChangeEventto all registered listeners.Methods inherited from class org.jfree.chart.renderer.category.AbstractCategoryItemRenderer
addEntity, addItemEntity, beginElementGroup, calculateDomainMarkerTextAnchorPoint, calculateRangeMarkerTextAnchorPoint, createState, drawBackground, drawDomainGridline, drawDomainMarker, drawItemLabel, drawOutline, drawRangeLine, drawRangeMarker, findRangeBounds, findRangeBounds, getColumnCount, getDefaultItemLabelGenerator, getDefaultItemURLGenerator, getDefaultToolTipGenerator, getDomainAxis, getDrawingSupplier, getItemLabelGenerator, getItemMiddle, getItemURLGenerator, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPlot, getRangeAxis, getRowCount, getSeriesItemLabelGenerator, getSeriesItemURLGenerator, getSeriesToolTipGenerator, getToolTipGenerator, hashCode, initialise, setDefaultItemLabelGenerator, setDefaultItemLabelGenerator, setDefaultItemURLGenerator, setDefaultItemURLGenerator, setDefaultToolTipGenerator, setDefaultToolTipGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesItemLabelGenerator, setSeriesItemURLGenerator, setSeriesItemURLGenerator, setSeriesToolTipGenerator, setSeriesToolTipGenerator, updateCrosshairValuesMethods 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, setTreatLegendShapeAsLineMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.jfree.chart.renderer.category.CategoryItemRenderer
addChangeListener, getDefaultCreateEntities, getDefaultFillPaint, getDefaultItemLabelFont, getDefaultItemLabelPaint, getDefaultItemLabelsVisible, getDefaultNegativeItemLabelPosition, getDefaultOutlinePaint, getDefaultOutlineStroke, getDefaultPaint, getDefaultPositiveItemLabelPosition, getDefaultSeriesVisible, getDefaultSeriesVisibleInLegend, getDefaultShape, getDefaultStroke, getItemCreateEntity, getItemFillPaint, getItemLabelFont, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisibleInLegend, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeChangeListener, setDefaultCreateEntities, setDefaultCreateEntities, setDefaultFillPaint, setDefaultItemLabelFont, setDefaultItemLabelFont, setDefaultItemLabelPaint, setDefaultItemLabelPaint, setDefaultItemLabelsVisible, setDefaultItemLabelsVisible, setDefaultNegativeItemLabelPosition, setDefaultNegativeItemLabelPosition, setDefaultOutlinePaint, setDefaultOutlinePaint, setDefaultOutlineStroke, setDefaultOutlineStroke, setDefaultPaint, setDefaultPaint, setDefaultPositiveItemLabelPosition, setDefaultPositiveItemLabelPosition, setDefaultSeriesVisible, setDefaultSeriesVisible, setDefaultSeriesVisibleInLegend, setDefaultSeriesVisibleInLegend, setDefaultShape, setDefaultShape, setDefaultStroke, setDefaultStroke, setSeriesCreateEntities, setSeriesCreateEntities, 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
-
Constructor Details
-
LineAndShapeRenderer
public LineAndShapeRenderer()Creates a renderer with both lines and shapes visible by default. -
LineAndShapeRenderer
Creates a new renderer with lines and/or shapes visible.- Parameters:
lines- draw lines?shapes- draw shapes?
-
-
Method Details
-
getItemLineVisible
Returns the flag used to control whether or not the line for an item is visible.- Parameters:
series- the series index (zero-based).item- the item index (zero-based).- Returns:
- A boolean.
-
getSeriesLinesVisible
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
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:
-
setSeriesLinesVisible
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:
-
getDefaultLinesVisible
Returns the default 'lines visible' attribute.- Returns:
- The default flag.
- See Also:
-
setDefaultLinesVisible
Sets the default 'lines visible' flag and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
-
getItemShapeVisible
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.
-
getSeriesShapesVisible
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
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:
-
setSeriesShapesVisible
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:
-
getDefaultShapesVisible
Returns the default 'shape visible' attribute.- Returns:
- The base flag.
- See Also:
-
setDefaultShapesVisible
Sets the default 'shapes visible' flag and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
-
getDrawOutlines
Returnstrueif outlines should be drawn for shapes, andfalseotherwise.- Returns:
- A boolean.
- See Also:
-
setDrawOutlines
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:
-
getUseOutlinePaint
Returns the flag that controls whether the outline paint is used for shape outlines. If not, the regular series paint is used.- Returns:
- A boolean.
- See Also:
-
setUseOutlinePaint
Sets the flag that controls whether the outline paint is used for shape outlines, and sends aRendererChangeEventto all registered listeners.- Parameters:
use- the flag.- See Also:
-
getItemShapeFilled
Returns the flag used to control whether or not the shape for an item is filled. The default implementation passes control to thegetSeriesShapesFilledmethod. 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
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 aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).filled- the flag.- See Also:
-
setSeriesShapesFilled
Sets the 'shapes filled' flag for a series and sends aRendererChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).filled- the flag.- See Also:
-
getDefaultShapesFilled
Returns the default 'shape filled' attribute.- Returns:
- The base flag.
- See Also:
-
setDefaultShapesFilled
Sets the default 'shapes filled' flag and sends aRendererChangeEventto all registered listeners.- Parameters:
flag- the flag.- See Also:
-
getUseFillPaint
Returnstrueif the renderer should use the fill paint setting to fill shapes, andfalseif it should just use the regular paint.- Returns:
- A boolean.
- See Also:
-
setUseFillPaint
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:
-
getUseSeriesOffset
Returns the flag that controls whether or not the x-position for each data item is offset within the category according to the series.- Returns:
- A boolean.
- See Also:
-
setUseSeriesOffset
Sets the flag that controls whether or not the x-position for each data item is offset within its category according to the series, and sends aRendererChangeEventto all registered listeners.- Parameters:
offset- the offset.- See Also:
-
getItemMargin
Returns the item margin, which is the gap between items within a category (expressed as a percentage of the overall category width). This can be used to match the offset alignment with the bars drawn by aBarRenderer).- Returns:
- The item margin.
- See Also:
-
setItemMargin
Sets the item margin, which is the gap between items within a category (expressed as a percentage of the overall category width), and sends aRendererChangeEventto all registered listeners.- Parameters:
margin- the margin (0.0 <= margin < 1.0).- See Also:
-
getLegendItem
Returns a legend item for a series.- Specified by:
getLegendItemin interfaceCategoryItemRenderer- Overrides:
getLegendItemin classAbstractCategoryItemRenderer- Parameters:
datasetIndex- the dataset index (zero-based).series- the series index (zero-based).- Returns:
- The legend item.
- See Also:
-
getPassCount
This renderer uses two passes to draw the data.- Specified by:
getPassCountin interfaceCategoryItemRenderer- Overrides:
getPassCountin classAbstractCategoryItemRenderer- Returns:
- The pass count (
2for this renderer).
-
drawItem
public void drawItem(Graphics2D g2, CategoryItemRendererState state, Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset, int row, int column, int pass) Draw a single data item.- Specified by:
drawItemin interfaceCategoryItemRenderer- Parameters:
g2- the graphics device.state- the renderer state.dataArea- the area in which the data is drawn.plot- the plot.domainAxis- the domain axis.rangeAxis- the range axis.dataset- the dataset.row- the row index (zero-based).column- the column index (zero-based).pass- the pass index.
-
equals
Tests this renderer for equality with an arbitrary object.- Overrides:
equalsin classAbstractCategoryItemRenderer- Parameters:
obj- the object (nullpermitted).- Returns:
- A boolean.
-
clone
Returns an independent copy of the renderer.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classAbstractCategoryItemRenderer- Returns:
- A clone.
- Throws:
CloneNotSupportedException- should not happen.
-