org.jfree.chart.renderer.category

Class LineAndShapeRenderer

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:

LineAndShapeRendererSample.png
Constructor Summary
LineAndShapeRenderer()
Creates 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
Objectclone()
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.
booleanequals(Object obj)
Tests this renderer for equality with an arbitrary object.
booleangetBaseLinesVisible()
Returns the base 'lines visible' attribute.
booleangetBaseShapesFilled()
Returns the base 'shape filled' attribute.
booleangetBaseShapesVisible()
Returns the base 'shape visible' attribute.
booleangetDrawOutlines()
Returns true if outlines should be drawn for shapes, and false otherwise.
booleangetItemLineVisible(int series, int item)
Returns the flag used to control whether or not the line for an item is visible.
doublegetItemMargin()
Returns 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.
LegendItemgetLegendItem(int datasetIndex, int series)
Returns a legend item for a series.
BooleangetLinesVisible()
Returns a flag that controls whether or not lines are drawn for ALL series.
intgetPassCount()
This renderer uses two passes to draw the data.
BooleangetSeriesLinesVisible(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.
BooleangetSeriesShapesVisible(int series)
Returns the flag used to control whether or not the shapes for a series are visible.
BooleangetShapesFilled()
Returns the flag that controls whether or not shapes are filled for ALL series.
BooleangetShapesVisible()
Returns the flag that controls whether the shapes are visible for the items in ALL series.
booleangetUseFillPaint()
Returns true if the renderer should use the fill paint setting to fill shapes, and false if it should just use the regular paint.
booleangetUseOutlinePaint()
Returns the flag that controls whether the outline paint is used for shape outlines.
booleangetUseSeriesOffset()
Returns the flag that controls whether or not the x-position for each data item is offset within the category according to the series.
voidsetBaseLinesVisible(boolean flag)
Sets the base 'lines visible' flag and sends a RendererChangeEvent to all registered listeners.
voidsetBaseShapesFilled(boolean flag)
Sets the base 'shapes filled' flag and sends a RendererChangeEvent to all registered listeners.
voidsetBaseShapesVisible(boolean flag)
Sets the base 'shapes visible' flag and sends a RendererChangeEvent to all registered listeners.
voidsetDrawOutlines(boolean flag)
Sets the flag that controls whether outlines are drawn for shapes, and sends a RendererChangeEvent to 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 a RendererChangeEvent to all registered listeners.
voidsetLinesVisible(Boolean visible)
Sets a flag that controls whether or not lines are drawn between the items in ALL series, and sends a RendererChangeEvent to all registered listeners.
voidsetLinesVisible(boolean visible)
Sets a flag that controls whether or not lines are drawn between the items in ALL series, and sends a RendererChangeEvent to all registered listeners.
voidsetSeriesLinesVisible(int series, Boolean flag)
Sets the 'lines visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
voidsetSeriesLinesVisible(int series, boolean visible)
Sets the 'lines visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
voidsetSeriesShapesFilled(int series, Boolean filled)
Sets the 'shapes filled' flag for a series and sends a RendererChangeEvent to all registered listeners.
voidsetSeriesShapesFilled(int series, boolean filled)
Sets the 'shapes filled' flag for a series and sends a RendererChangeEvent to all registered listeners.
voidsetSeriesShapesVisible(int series, boolean visible)
Sets the 'shapes visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
voidsetSeriesShapesVisible(int series, Boolean flag)
Sets the 'shapes visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
voidsetShapesFilled(boolean filled)
Sets the 'shapes filled' for ALL series and sends a RendererChangeEvent to all registered listeners.
voidsetShapesFilled(Boolean filled)
Sets the 'shapes filled' for ALL series and sends a RendererChangeEvent to all registered listeners.
voidsetShapesVisible(Boolean visible)
Sets the 'shapes visible' for ALL series and sends a RendererChangeEvent to all registered listeners.
voidsetShapesVisible(boolean visible)
Sets the 'shapes visible' for ALL series and sends a RendererChangeEvent to all registered listeners.
voidsetUseFillPaint(boolean flag)
Sets the flag that controls whether the fill paint is used to fill shapes, and sends a RendererChangeEvent to all registered listeners.
voidsetUseOutlinePaint(boolean use)
Sets the flag that controls whether the outline paint is used for shape outlines, and sends a RendererChangeEvent to 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 a RendererChangeEvent to all registered listeners.

Constructor Detail

LineAndShapeRenderer

public LineAndShapeRenderer()
Creates a renderer with both lines and shapes visible by default.

LineAndShapeRenderer

public LineAndShapeRenderer(boolean lines, boolean shapes)
Creates a new renderer with lines and/or shapes visible.

Parameters: lines draw lines? shapes draw shapes?

Method Detail

clone

public Object clone()
Returns an independent copy of the renderer.

Returns: A clone.

Throws: CloneNotSupportedException should not happen.

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.

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

public boolean equals(Object obj)
Tests this renderer for equality with an arbitrary object.

Parameters: obj the object (null permitted).

Returns: A boolean.

getBaseLinesVisible

public boolean getBaseLinesVisible()
Returns the base 'lines visible' attribute.

Returns: The base flag.

See Also: getBaseLinesVisible

getBaseShapesFilled

public boolean getBaseShapesFilled()
Returns the base 'shape filled' attribute.

Returns: The base flag.

See Also: LineAndShapeRenderer

getBaseShapesVisible

public boolean getBaseShapesVisible()
Returns the base 'shape visible' attribute.

Returns: The base flag.

See Also: LineAndShapeRenderer

getDrawOutlines

public boolean getDrawOutlines()
Returns true if outlines should be drawn for shapes, and false otherwise.

Returns: A boolean.

See Also: LineAndShapeRenderer

getItemLineVisible

public boolean getItemLineVisible(int series, int item)
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.

getItemMargin

public double 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 a BarRenderer).

Returns: The item margin.

Since: 1.0.7

See Also: LineAndShapeRenderer

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.

getItemShapeVisible

public boolean getItemShapeVisible(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.

getLegendItem

public LegendItem getLegendItem(int datasetIndex, int series)
Returns a legend item for a series.

Parameters: datasetIndex the dataset index (zero-based). series the series index (zero-based).

Returns: The legend item.

getLinesVisible

public Boolean getLinesVisible()

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Returns a flag that controls whether or not lines are drawn for ALL series. If this flag is null, then the "per series" settings will apply.

Returns: A flag (possibly null).

See Also:

getPassCount

public int getPassCount()
This renderer uses two passes to draw the data.

Returns: The pass count (2 for this renderer).

getSeriesLinesVisible

public 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: LineAndShapeRenderer

getSeriesShapesFilled

public 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.

getSeriesShapesVisible

public 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: LineAndShapeRenderer

getShapesFilled

public Boolean getShapesFilled()

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Returns the flag that controls whether or not shapes are filled for ALL series.

Returns: A Boolean.

See Also:

getShapesVisible

public Boolean getShapesVisible()

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Returns the flag that controls whether the shapes are visible for the items in ALL series.

Returns: The flag (possibly null).

See Also:

getUseFillPaint

public boolean getUseFillPaint()
Returns true if the renderer should use the fill paint setting to fill shapes, and false if it should just use the regular paint.

Returns: A boolean.

See Also: LineAndShapeRenderer

getUseOutlinePaint

public boolean 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: LineAndShapeRenderer

getUseSeriesOffset

public boolean 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.

Since: 1.0.7

See Also:

setBaseLinesVisible

public void setBaseLinesVisible(boolean flag)
Sets the base 'lines visible' flag and sends a RendererChangeEvent to all registered listeners.

Parameters: flag the flag.

See Also: getBaseLinesVisible

setBaseShapesFilled

public void setBaseShapesFilled(boolean flag)
Sets the base 'shapes filled' flag and sends a RendererChangeEvent to all registered listeners.

Parameters: flag the flag.

See Also: getBaseShapesFilled

setBaseShapesVisible

public void setBaseShapesVisible(boolean flag)
Sets the base 'shapes visible' flag and sends a RendererChangeEvent to all registered listeners.

Parameters: flag the flag.

See Also: getBaseShapesVisible

setDrawOutlines

public void setDrawOutlines(boolean flag)
Sets the flag that controls whether outlines are drawn for shapes, and sends a RendererChangeEvent to 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

setItemMargin

public void setItemMargin(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 a RendererChangeEvent to all registered listeners.

Parameters: margin the margin (0.0 <= margin < 1.0).

Since: 1.0.7

See Also: getItemMargin

setLinesVisible

public void setLinesVisible(Boolean visible)

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Sets a flag that controls whether or not lines are drawn between the items in ALL series, and sends a RendererChangeEvent to all registered listeners. You need to set this to null if you want the "per series" settings to apply.

Parameters: visible the flag (null permitted).

See Also:

setLinesVisible

public void setLinesVisible(boolean visible)

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Sets a flag that controls whether or not lines are drawn between the items in ALL series, and sends a RendererChangeEvent to all registered listeners.

Parameters: visible the flag.

See Also:

setSeriesLinesVisible

public void setSeriesLinesVisible(int series, Boolean flag)
Sets the 'lines visible' flag for a series and sends a RendererChangeEvent to all registered listeners.

Parameters: series the series index (zero-based). flag the flag (null permitted).

See Also: LineAndShapeRenderer

setSeriesLinesVisible

public void setSeriesLinesVisible(int series, boolean visible)
Sets the 'lines visible' flag for a series and sends a RendererChangeEvent to all registered listeners.

Parameters: series the series index (zero-based). visible the flag.

See Also: LineAndShapeRenderer

setSeriesShapesFilled

public void setSeriesShapesFilled(int series, Boolean filled)
Sets the 'shapes filled' flag for a series and sends a RendererChangeEvent to all registered listeners.

Parameters: series the series index (zero-based). filled the flag.

See Also: LineAndShapeRenderer

setSeriesShapesFilled

public void setSeriesShapesFilled(int series, boolean filled)
Sets the 'shapes filled' flag for a series and sends a RendererChangeEvent to all registered listeners.

Parameters: series the series index (zero-based). filled the flag.

See Also: LineAndShapeRenderer

setSeriesShapesVisible

public void setSeriesShapesVisible(int series, boolean visible)
Sets the 'shapes visible' flag for a series and sends a RendererChangeEvent to all registered listeners.

Parameters: series the series index (zero-based). visible the flag.

See Also: LineAndShapeRenderer

setSeriesShapesVisible

public void setSeriesShapesVisible(int series, Boolean flag)
Sets the 'shapes visible' flag for a series and sends a RendererChangeEvent to all registered listeners.

Parameters: series the series index (zero-based). flag the flag.

See Also: LineAndShapeRenderer

setShapesFilled

public void setShapesFilled(boolean filled)

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Sets the 'shapes filled' for ALL series and sends a RendererChangeEvent to all registered listeners.

Parameters: filled the flag.

See Also:

setShapesFilled

public void setShapesFilled(Boolean filled)

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Sets the 'shapes filled' for ALL series and sends a RendererChangeEvent to all registered listeners.

Parameters: filled the flag (null permitted).

See Also:

setShapesVisible

public void setShapesVisible(Boolean visible)

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Sets the 'shapes visible' for ALL series and sends a RendererChangeEvent to all registered listeners.

Parameters: visible the flag (null permitted).

See Also:

setShapesVisible

public void setShapesVisible(boolean visible)

Deprecated: As of 1.0.7 (the override facility is unnecessary, just use the per-series and base (default) settings).

Sets the 'shapes visible' for ALL series and sends a RendererChangeEvent to all registered listeners.

Parameters: visible the flag.

See Also:

setUseFillPaint

public void setUseFillPaint(boolean flag)
Sets the flag that controls whether the fill paint is used to fill shapes, and sends a RendererChangeEvent to all registered listeners.

Parameters: flag the flag.

See Also: getUseFillPaint

setUseOutlinePaint

public void setUseOutlinePaint(boolean use)
Sets the flag that controls whether the outline paint is used for shape outlines, and sends a RendererChangeEvent to all registered listeners.

Parameters: use the flag.

See Also: getUseOutlinePaint

setUseSeriesOffset

public void setUseSeriesOffset(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 a RendererChangeEvent to all registered listeners.

Parameters: offset the offset.

Since: 1.0.7

See Also:

Copyright © 2000-2009 by Object Refinery Limited. All Rights Reserved.