org.jfree.chart.plot

Class CombinedDomainCategoryPlot

public class CombinedDomainCategoryPlot extends CategoryPlot implements PlotChangeListener

A combined category plot where the domain axis is shared.
Constructor Summary
CombinedDomainCategoryPlot()
Default constructor.
CombinedDomainCategoryPlot(CategoryAxis domainAxis)
Creates a new plot.
Method Summary
voidadd(CategoryPlot subplot)
Adds a subplot to the combined chart and sends a PlotChangeEvent to all registered listeners.
voidadd(CategoryPlot subplot, int weight)
Adds a subplot to the combined chart and sends a PlotChangeEvent to all registered listeners.
protected AxisSpacecalculateAxisSpace(Graphics2D g2, Rectangle2D plotArea)
Calculates the space required for the axes.
Objectclone()
Returns a clone of the plot.
voiddraw(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)
Draws the plot on a Java 2D graphics device (such as the screen or a printer).
booleanequals(Object obj)
Tests the plot for equality with an arbitrary object.
CategoryPlotfindSubplot(PlotRenderingInfo info, Point2D source)
Returns the subplot (if any) that contains the (x, y) point (specified in Java2D space).
ListgetCategories()
Returns an unmodifiable list of the categories contained in all the subplots.
ListgetCategoriesForAxis(CategoryAxis axis)
Overridden to return the categories in the subplots.
RangegetDataRange(ValueAxis axis)
Returns a range representing the extent of the data values in this plot (obtained from the subplots) that will be rendered against the specified axis.
doublegetGap()
Returns the space between subplots.
LegendItemCollectiongetLegendItems()
Returns a collection of legend items for the plot.
ListgetSubplots()
Returns the list of subplots.
voidhandleClick(int x, int y, PlotRenderingInfo info)
Handles a 'click' on the plot.
voidplotChanged(PlotChangeEvent event)
Receives a PlotChangeEvent and responds by notifying all listeners.
voidremove(CategoryPlot subplot)
Removes a subplot from the combined chart.
protected voidsetFixedRangeAxisSpaceForSubplots(AxisSpace space)
Sets the size (width or height, depending on the orientation of the plot) for the range axis of each subplot.
voidsetGap(double gap)
Sets the amount of space between subplots and sends a PlotChangeEvent to all registered listeners.
voidsetOrientation(PlotOrientation orientation)
Sets the orientation of the plot (and all subplots).
voidzoomRangeAxes(double factor, PlotRenderingInfo info, Point2D source)
Multiplies the range on the range axis/axes by the specified factor.
voidzoomRangeAxes(double factor, PlotRenderingInfo info, Point2D source, boolean useAnchor)
Multiplies the range on the range axis/axes by the specified factor.
voidzoomRangeAxes(double lowerPercent, double upperPercent, PlotRenderingInfo info, Point2D source)
Zooms in on the range axes.

Constructor Detail

CombinedDomainCategoryPlot

public CombinedDomainCategoryPlot()
Default constructor.

CombinedDomainCategoryPlot

public CombinedDomainCategoryPlot(CategoryAxis domainAxis)
Creates a new plot.

Parameters: domainAxis the shared domain axis (null not permitted).

Method Detail

add

public void add(CategoryPlot subplot)
Adds a subplot to the combined chart and sends a PlotChangeEvent to all registered listeners.

The domain axis for the subplot will be set to null. You must ensure that the subplot has a non-null range axis.

Parameters: subplot the subplot (null not permitted).

add

public void add(CategoryPlot subplot, int weight)
Adds a subplot to the combined chart and sends a PlotChangeEvent to all registered listeners.

The domain axis for the subplot will be set to null. You must ensure that the subplot has a non-null range axis.

Parameters: subplot the subplot (null not permitted). weight the weight (must be >= 1).

calculateAxisSpace

protected AxisSpace calculateAxisSpace(Graphics2D g2, Rectangle2D plotArea)
Calculates the space required for the axes.

Parameters: g2 the graphics device. plotArea the plot area.

Returns: The space required for the axes.

clone

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

Returns: A clone.

Throws: CloneNotSupportedException this class will not throw this exception, but subclasses (if any) might.

draw

public void draw(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)
Draws the plot on a Java 2D graphics device (such as the screen or a printer). Will perform all the placement calculations for each of the sub-plots and then tell these to draw themselves.

Parameters: g2 the graphics device. area the area within which the plot (including axis labels) should be drawn. anchor the anchor point (null permitted). parentState the state from the parent plot, if there is one. info collects information about the drawing (null permitted).

equals

public boolean equals(Object obj)
Tests the plot for equality with an arbitrary object.

Parameters: obj the object (null permitted).

Returns: A boolean.

findSubplot

public CategoryPlot findSubplot(PlotRenderingInfo info, Point2D source)
Returns the subplot (if any) that contains the (x, y) point (specified in Java2D space).

Parameters: info the chart rendering info (null not permitted). source the source point (null not permitted).

Returns: A subplot (possibly null).

getCategories

public List getCategories()
Returns an unmodifiable list of the categories contained in all the subplots.

Returns: The list.

getCategoriesForAxis

public List getCategoriesForAxis(CategoryAxis axis)
Overridden to return the categories in the subplots.

Parameters: axis ignored.

Returns: A list of the categories in the subplots.

Since: 1.0.3

getDataRange

public Range getDataRange(ValueAxis axis)
Returns a range representing the extent of the data values in this plot (obtained from the subplots) that will be rendered against the specified axis. NOTE: This method is intended for internal JFreeChart use, and is public only so that code in the axis classes can call it. Since, for this class, the domain axis is a CategoryAxis (not a ValueAxisParameters: axis the axis.

Returns: The range.

getGap

public double getGap()
Returns the space between subplots.

Returns: The gap (in Java2D units).

getLegendItems

public LegendItemCollection getLegendItems()
Returns a collection of legend items for the plot.

Returns: The legend items.

getSubplots

public List getSubplots()
Returns the list of subplots. The returned list may be empty, but is never null.

Returns: An unmodifiable list of subplots.

handleClick

public void handleClick(int x, int y, PlotRenderingInfo info)
Handles a 'click' on the plot.

Parameters: x x-coordinate of the click. y y-coordinate of the click. info information about the plot's dimensions.

plotChanged

public void plotChanged(PlotChangeEvent event)
Receives a PlotChangeEvent and responds by notifying all listeners.

Parameters: event the event.

remove

public void remove(CategoryPlot subplot)
Removes a subplot from the combined chart. Potentially, this removes some unique categories from the overall union of the datasets...so the domain axis is reconfigured, then a PlotChangeEvent is sent to all registered listeners.

Parameters: subplot the subplot (null not permitted).

setFixedRangeAxisSpaceForSubplots

protected void setFixedRangeAxisSpaceForSubplots(AxisSpace space)
Sets the size (width or height, depending on the orientation of the plot) for the range axis of each subplot.

Parameters: space the space (null permitted).

setGap

public void setGap(double gap)
Sets the amount of space between subplots and sends a PlotChangeEvent to all registered listeners.

Parameters: gap the gap between subplots (in Java2D units).

setOrientation

public void setOrientation(PlotOrientation orientation)
Sets the orientation of the plot (and all subplots).

Parameters: orientation the orientation (null not permitted).

zoomRangeAxes

public void zoomRangeAxes(double factor, PlotRenderingInfo info, Point2D source)
Multiplies the range on the range axis/axes by the specified factor.

Parameters: factor the zoom factor. info the plot rendering info (null not permitted). source the source point (null not permitted).

zoomRangeAxes

public void zoomRangeAxes(double factor, PlotRenderingInfo info, Point2D source, boolean useAnchor)
Multiplies the range on the range axis/axes by the specified factor.

Parameters: factor the zoom factor. info the plot rendering info (null not permitted). source the source point (null not permitted). useAnchor zoom about the anchor point?

zoomRangeAxes

public void zoomRangeAxes(double lowerPercent, double upperPercent, PlotRenderingInfo info, Point2D source)
Zooms in on the range axes.

Parameters: lowerPercent the lower bound. upperPercent the upper bound. info the plot rendering info (null not permitted). source the source point (null not permitted).