org.jfree.chart.renderer.xy

Class ClusteredXYBarRenderer

public class ClusteredXYBarRenderer extends XYBarRenderer implements Cloneable, PublicCloneable, Serializable

An extension of XYBarRenderer that displays bars for different series values at the same x next to each other. The assumption here is that for each x (time or else) there is a y value for each series. If this is not the case, there will be spaces between bars for a given x.

This renderer does not include code to calculate the crosshair point for the plot.

Constructor Summary
ClusteredXYBarRenderer()
Default constructor.
ClusteredXYBarRenderer(double margin, boolean centerBarAtStartValue)
Constructs a new XY clustered bar renderer.
Method Summary
Objectclone()
Returns a clone of the renderer.
voiddrawItem(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.
booleanequals(Object obj)
Tests this renderer for equality with an arbitrary object, returning true if obj is a ClusteredXYBarRenderer with the same settings as this renderer, and false otherwise.

Constructor Detail

ClusteredXYBarRenderer

public ClusteredXYBarRenderer()
Default constructor. Bar margin is set to 0.0.

ClusteredXYBarRenderer

public ClusteredXYBarRenderer(double margin, boolean centerBarAtStartValue)
Constructs a new XY clustered bar renderer.

Parameters: margin the percentage amount to trim from the width of each bar. centerBarAtStartValue if true, bars will be centered on the start of the time period.

Method Detail

clone

public Object clone()
Returns a clone of the renderer.

Returns: A clone.

Throws: CloneNotSupportedException if the renderer cannot be cloned.

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. This method is mostly copied from the superclass, the change is that in the calculated space for a singe bar we draw bars for each series next to each other. The width of each bar is the available width divided by the number of series. Bars for each series are drawn in order left to right.

Parameters: g2 the graphics device. state the renderer state. dataArea the area within which the plot 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. item the item index. crosshairState crosshair information for the plot (null permitted). pass the pass index.

equals

public boolean equals(Object obj)
Tests this renderer for equality with an arbitrary object, returning true if obj is a ClusteredXYBarRenderer with the same settings as this renderer, and false otherwise.

Parameters: obj the object (null permitted).

Returns: A boolean.