org.jfree.chart.plot

Class CombinedRangeCategoryPlot

Implemented Interfaces:
Cloneable, EventListener, PublicCloneable, Serializable, AxisChangeListener, DatasetChangeListener, LegendItemSource, MarkerChangeListener, PlotChangeListener, PublicCloneable, RendererChangeListener, Serializable, ValueAxisPlot, Zoomable

public class CombinedRangeCategoryPlot
extends CategoryPlot
implements Zoomable, Cloneable, PublicCloneable, Serializable, PlotChangeListener

A combined category plot where the range axis is shared.

Field Summary

Fields inherited from class org.jfree.chart.plot.CategoryPlot

DEFAULT_CROSSHAIR_PAINT, DEFAULT_CROSSHAIR_STROKE, DEFAULT_CROSSHAIR_VISIBLE, DEFAULT_DOMAIN_GRIDLINES_VISIBLE, DEFAULT_GRIDLINE_PAINT, DEFAULT_GRIDLINE_STROKE, DEFAULT_RANGE_GRIDLINES_VISIBLE, DEFAULT_VALUE_LABEL_FONT, localizationResources

Fields inherited from class org.jfree.chart.plot.Plot

DEFAULT_BACKGROUND_ALPHA, DEFAULT_BACKGROUND_PAINT, DEFAULT_FOREGROUND_ALPHA, DEFAULT_INSETS, DEFAULT_LEGEND_ITEM_BOX, DEFAULT_LEGEND_ITEM_CIRCLE, DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, MINIMUM_HEIGHT_TO_DRAW, MINIMUM_WIDTH_TO_DRAW, ZERO

Constructor Summary

CombinedRangeCategoryPlot()
Default constructor.
CombinedRangeCategoryPlot(ValueAxis rangeAxis)
Creates a new plot.

Method Summary

void
add(CategoryPlot subplot)
Adds a subplot (with a default 'weight' of 1) and sends a PlotChangeEvent to all registered listeners.
void
add(CategoryPlot subplot, int weight)
Adds a subplot and sends a PlotChangeEvent to all registered listeners.
protected AxisSpace
calculateAxisSpace(Graphics2D g2, Rectangle2D plotArea)
Calculates the space required for the axes.
Object
clone()
Returns a clone of the plot.
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).
boolean
equals(Object obj)
Tests the plot for equality with an arbitrary object.
Range
getDataRange(ValueAxis axis)
Returns the range for the axis.
double
getGap()
Returns the space between subplots.
LegendItemCollection
getLegendItems()
Returns a collection of legend items for the plot.
List
getSubplots()
Returns the list of subplots.
void
handleClick(int x, int y, PlotRenderingInfo info)
Handles a 'click' on the plot by updating the anchor value.
void
plotChanged(PlotChangeEvent event)
Receives a PlotChangeEvent and responds by notifying all listeners.
void
remove(CategoryPlot subplot)
Removes a subplot from the combined chart.
protected void
setFixedDomainAxisSpaceForSubplots(AxisSpace space)
Sets the size (width or height, depending on the orientation of the plot) for the domain axis of each subplot.
void
setGap(double gap)
Sets the amount of space between subplots and sends a PlotChangeEvent to all registered listeners.
void
setOrientation(PlotOrientation orientation)
Sets the orientation for the plot (and all the subplots).

Methods inherited from class org.jfree.chart.plot.CategoryPlot

addAnnotation, addDomainMarker, addDomainMarker, addDomainMarker, addRangeMarker, addRangeMarker, addRangeMarker, calculateAxisSpace, calculateDomainAxisSpace, calculateRangeAxisSpace, clearAnnotations, clearDomainAxes, clearDomainMarkers, clearDomainMarkers, clearRangeAxes, clearRangeMarkers, clearRangeMarkers, clone, configureDomainAxes, configureRangeAxes, datasetChanged, draw, drawAnnotations, drawAxes, drawDomainGridlines, drawDomainMarkers, drawRangeCrosshair, drawRangeGridlines, drawRangeLine, drawRangeMarkers, equals, getAnchorValue, getAnnotations, getAxisOffset, getCategories, getCategoriesForAxis, getColumnRenderingOrder, getDataRange, getDataset, getDataset, getDatasetCount, getDatasetRenderingOrder, getDomainAxis, getDomainAxis, getDomainAxisCount, getDomainAxisEdge, getDomainAxisEdge, getDomainAxisForDataset, getDomainAxisIndex, getDomainAxisLocation, getDomainAxisLocation, getDomainGridlinePaint, getDomainGridlinePosition, getDomainGridlineStroke, getDomainMarkers, getDomainMarkers, getDrawSharedDomainAxis, getFixedDomainAxisSpace, getFixedLegendItems, getFixedRangeAxisSpace, getIndexOf, getLegendItems, getOrientation, getPlotType, getRangeAxis, getRangeAxis, getRangeAxisCount, getRangeAxisEdge, getRangeAxisEdge, getRangeAxisForDataset, getRangeAxisLocation, getRangeAxisLocation, getRangeCrosshairPaint, getRangeCrosshairStroke, getRangeCrosshairValue, getRangeGridlinePaint, getRangeGridlineStroke, getRangeMarkers, getRangeMarkers, getRenderer, getRenderer, getRendererForDataset, getRowRenderingOrder, getWeight, handleClick, isDomainGridlinesVisible, isDomainZoomable, isRangeCrosshairLockedOnData, isRangeCrosshairVisible, isRangeGridlinesVisible, isRangeZoomable, mapDatasetToDomainAxis, mapDatasetToRangeAxis, removeAnnotation, render, rendererChanged, setAnchorValue, setAnchorValue, setAxisOffset, setColumnRenderingOrder, setDataset, setDataset, setDatasetRenderingOrder, setDomainAxes, setDomainAxis, setDomainAxis, setDomainAxis, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainGridlinePaint, setDomainGridlinePosition, setDomainGridlineStroke, setDomainGridlinesVisible, setDrawSharedDomainAxis, setFixedDomainAxisSpace, setFixedLegendItems, setFixedRangeAxisSpace, setOrientation, setRangeAxes, setRangeAxis, setRangeAxis, setRangeAxis, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeCrosshairLockedOnData, setRangeCrosshairPaint, setRangeCrosshairStroke, setRangeCrosshairValue, setRangeCrosshairValue, setRangeCrosshairVisible, setRangeGridlinePaint, setRangeGridlineStroke, setRangeGridlinesVisible, setRenderer, setRenderer, setRenderer, setRenderer, setRenderers, setRowRenderingOrder, setWeight, zoom, zoomDomainAxes, zoomDomainAxes, zoomRangeAxes, zoomRangeAxes

Methods inherited from class org.jfree.chart.plot.Plot

addChangeListener, axisChanged, clone, datasetChanged, draw, drawBackground, drawBackgroundImage, drawNoDataMessage, drawOutline, equals, fillBackground, getBackgroundAlpha, getBackgroundImage, getBackgroundImageAlignment, getBackgroundImageAlpha, getBackgroundPaint, getDatasetGroup, getDrawingSupplier, getForegroundAlpha, getInsets, getLegendItems, getNoDataMessage, getNoDataMessageFont, getNoDataMessagePaint, getOutlinePaint, getOutlineStroke, getParent, getPlotType, getRectX, getRectY, getRootPlot, handleClick, isSubplot, markerChanged, notifyListeners, removeChangeListener, resolveDomainAxisLocation, resolveRangeAxisLocation, setBackgroundAlpha, setBackgroundImage, setBackgroundImageAlignment, setBackgroundImageAlpha, setBackgroundPaint, setDatasetGroup, setDrawingSupplier, setForegroundAlpha, setInsets, setInsets, setNoDataMessage, setNoDataMessageFont, setNoDataMessagePaint, setOutlinePaint, setOutlineStroke, setParent, zoom

Constructor Details

CombinedRangeCategoryPlot

public CombinedRangeCategoryPlot()
Default constructor.

CombinedRangeCategoryPlot

public CombinedRangeCategoryPlot(ValueAxis rangeAxis)
Creates a new plot.
Parameters:
rangeAxis - the shared range axis.

Method Details

add

public void add(CategoryPlot subplot)
Adds a subplot (with a default 'weight' of 1) and sends a PlotChangeEvent to all registered listeners.

You must ensure that the subplot has a non-null domain axis. The range axis for the subplot will be set to null.
Parameters:
subplot - the subplot (null not permitted).

add

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

You must ensure that the subplot has a non-null domain axis. The range axis for the subplot will be set to null.
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.
Overrides:
calculateAxisSpace in interface CategoryPlot
Parameters:
g2 - the graphics device.
plotArea - the plot area.
Returns:
The space required for the axes.

clone

public Object clone()
            throws CloneNotSupportedException
Returns a clone of the plot.
Overrides:
clone in interface CategoryPlot
Returns:
A clone.

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 sub-plots and then tell these to draw themselves.
Overrides:
draw in interface CategoryPlot
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 parent state.
info - collects information about the drawing (null permitted).

equals

public boolean equals(Object obj)
Tests the plot for equality with an arbitrary object.
Overrides:
equals in interface CategoryPlot
Parameters:
obj - the object (null permitted).
Returns:
true or false.

getDataRange

public Range getDataRange(ValueAxis axis)
Returns the range for the axis. This is the combined range of all the subplots.
Specified by:
getDataRange in interface ValueAxisPlot
Overrides:
getDataRange in interface CategoryPlot
Parameters:
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.
Specified by:
getLegendItems in interface LegendItemSource
Overrides:
getLegendItems in interface CategoryPlot
Returns:
The legend items.

getSubplots

public List getSubplots()
Returns the list of subplots.
Returns:
The list (unmodifiable).

handleClick

public void handleClick(int x,
                        int y,
                        PlotRenderingInfo info)
Handles a 'click' on the plot by updating the anchor value.
Overrides:
handleClick in interface CategoryPlot
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.
Specified by:
plotChanged in interface PlotChangeListener
Parameters:
event - the event.

remove

public void remove(CategoryPlot subplot)
Removes a subplot from the combined chart.
Parameters:
subplot - the subplot (null not permitted).

setFixedDomainAxisSpaceForSubplots

protected void setFixedDomainAxisSpaceForSubplots(AxisSpace space)
Sets the size (width or height, depending on the orientation of the plot) for the domain axis of each subplot.
Parameters:
space - the space.

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 for the plot (and all the subplots).
Overrides:
setOrientation in interface CategoryPlot
Parameters:
orientation - the orientation.