org.jfree.chart.plot
Class CombinedRangeCategoryPlot

java.lang.Object
  extended byorg.jfree.chart.plot.Plot
      extended byorg.jfree.chart.plot.CategoryPlot
          extended byorg.jfree.chart.plot.CombinedRangeCategoryPlot
All Implemented Interfaces:
AxisChangeListener, AxisConstants, java.lang.Cloneable, DatasetChangeListener, java.util.EventListener, PlotChangeListener, org.jfree.util.PublicCloneable, RendererChangeListener, java.io.Serializable, ValueAxisPlot

public class CombinedRangeCategoryPlot
extends CategoryPlot
implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable, PlotChangeListener

A combined category plot where the range axis is shared.

Author:
David Gilbert
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.jfree.chart.plot.CategoryPlot
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_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, MINIMUM_HEIGHT_TO_DRAW, MINIMUM_WIDTH_TO_DRAW, ZERO
 
Fields inherited from interface org.jfree.chart.axis.AxisConstants
DEFAULT_AXIS_LABEL_FONT, DEFAULT_AXIS_LABEL_INSETS, DEFAULT_AXIS_LABEL_PAINT, DEFAULT_AXIS_LINE_PAINT, DEFAULT_AXIS_LINE_STROKE, DEFAULT_AXIS_VISIBLE, DEFAULT_TICK_LABEL_FONT, DEFAULT_TICK_LABEL_INSETS, DEFAULT_TICK_LABEL_PAINT, DEFAULT_TICK_LABELS_VISIBLE, DEFAULT_TICK_MARK_INSIDE_LENGTH, DEFAULT_TICK_MARK_OUTSIDE_LENGTH, DEFAULT_TICK_MARK_PAINT, DEFAULT_TICK_MARK_STROKE, DEFAULT_TICK_MARKS_VISIBLE
 
Constructor Summary
CombinedRangeCategoryPlot(ValueAxis rangeAxis)
          Creates a new plot.
 
Method Summary
 void add(CategoryPlot subplot, int weight)
          Adds a subplot.
protected  AxisSpace calculateAxisSpace(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D plotArea)
          Calculates the space required for the axes.
 java.lang.Object clone()
          Returns a clone of the plot.
 void draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D plotArea, PlotState parentState, PlotRenderingInfo info)
          Draws the plot on a Java 2D graphics device (such as the screen or a printer).
 boolean equals(java.lang.Object object)
          Tests the plot for equality with an arbitrary object.
 Range getDataRange(ValueAxis axis)
          Returns the range for the axis.
 LegendItemCollection getLegendItems()
          Returns a collection of legend items for the plot.
 java.util.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 setOrientation(PlotOrientation orientation)
          Sets the orientation for the plot (and all the subplots).
 
Methods inherited from class org.jfree.chart.plot.CategoryPlot
addAnnotation, addRangeMarker, addRangeMarker, addSecondaryRangeMarker, addSecondaryRangeMarker, calculateDomainAxisSpace, calculateRangeAxisSpace, clearRangeMarkers, clearSecondaryDomainAxes, clearSecondaryRangeAxes, clearSecondaryRangeMarkers, clearSecondaryRangeMarkers, configureSecondaryDomainAxes, configureSecondaryRangeAxes, datasetChanged, drawAnnotations, drawAxes, drawDomainGridlines, drawRangeGridlines, drawRangeLine, drawRangeMarkers, drawSecondaryRangeMarkers, drawSecondaryRangeMarkers, getAnchorValue, getAnnotations, getAxisOffset, getCategories, getColumnRenderingOrder, getDataset, getDatasetRenderingOrder, getDomainAxis, getDomainAxisEdge, getDomainAxisLocation, getDomainGridlinePaint, getDomainGridlinePosition, getDomainGridlineStroke, getDrawSharedDomainAxis, getFixedDomainAxisSpace, getFixedRangeAxisSpace, getOrientation, getPlotType, getRangeAxis, getRangeAxisEdge, getRangeAxisForSecondaryDataset, getRangeAxisLocation, getRangeCrosshairPaint, getRangeCrosshairStroke, getRangeCrosshairValue, getRangeGridlinePaint, getRangeGridlineStroke, getRangeMarkers, getRangeMarkers, getRenderer, getRowRenderingOrder, getSecondaryDataset, getSecondaryDomainAxis, getSecondaryDomainAxisEdge, getSecondaryDomainAxisLocation, getSecondaryRangeAxis, getSecondaryRangeAxisEdge, getSecondaryRangeAxisLocation, getSecondaryRangeMarkers, getSecondaryRangeMarkers, getSecondaryRenderer, getWeight, isDomainGridlinesVisible, isRangeCrosshairLockedOnData, isRangeCrosshairVisible, isRangeGridlinesVisible, mapSecondaryDatasetToDomainAxis, mapSecondaryDatasetToRangeAxis, render, render2, rendererChanged, setAnchorValue, setAnchorValue, setAxisOffset, setColumnRenderingOrder, setDataset, setDatasetRenderingOrder, setDomainAxis, setDomainAxisLocation, setDomainAxisLocation, setDomainGridlinePaint, setDomainGridlinePosition, setDomainGridlineStroke, setDomainGridlinesVisible, setFixedDomainAxisSpace, setFixedRangeAxisSpace, setRangeAxis, setRangeAxisLocation, setRangeAxisLocation, setRangeCrosshairLockedOnData, setRangeCrosshairPaint, setRangeCrosshairStroke, setRangeCrosshairValue, setRangeCrosshairValue, setRangeCrosshairVisible, setRangeGridlinePaint, setRangeGridlineStroke, setRangeGridlinesVisible, setRenderer, setRenderer, setRowRenderingOrder, setSecondaryDataset, setSecondaryDomainAxis, setSecondaryDomainAxisLocation, setSecondaryRangeAxis, setSecondaryRangeAxisLocation, setSecondaryRenderer, setWeight, zoom, zoomHorizontalAxes, zoomHorizontalAxes, zoomVerticalAxes, zoomVerticalAxes
 
Methods inherited from class org.jfree.chart.plot.Plot
addChangeListener, axisChanged, draw, drawBackground, drawNoDataMessage, drawOutline, getBackgroundAlpha, getBackgroundImage, getBackgroundImageAlignment, getBackgroundPaint, getDataAreaRatio, getDatasetGroup, getDrawingSupplier, getForegroundAlpha, getInsets, getNoDataMessage, getNoDataMessageFont, getNoDataMessagePaint, getOutlinePaint, getOutlineStroke, getParent, getRectX, getRectY, getRootPlot, isSubplot, notifyListeners, removeChangeListener, resolveDomainAxisLocation, resolveRangeAxisLocation, setBackgroundAlpha, setBackgroundImage, setBackgroundImageAlignment, setBackgroundPaint, setDataAreaRatio, setDatasetGroup, setDrawingSupplier, setForegroundAlpha, setInsets, setInsets, setNoDataMessage, setNoDataMessageFont, setNoDataMessagePaint, setOutlinePaint, setOutlineStroke, setParent
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CombinedRangeCategoryPlot

public CombinedRangeCategoryPlot(ValueAxis rangeAxis)
Creates a new plot.

Parameters:
rangeAxis - the shared range axis.
Method Detail

add

public void add(CategoryPlot subplot,
                int weight)
Adds a subplot.

Parameters:
subplot - the subplot.
weight - the weight.

remove

public void remove(CategoryPlot subplot)
Removes a subplot from the combined chart.

Parameters:
subplot - the subplot.

getSubplots

public java.util.List getSubplots()
Returns the list of subplots.

Returns:
the list of subplots.

calculateAxisSpace

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

Overrides:
calculateAxisSpace in class CategoryPlot
Parameters:
g2 - the graphics device.
plotArea - the plot area.
Returns:
The space required for the axes.

draw

public void draw(java.awt.Graphics2D g2,
                 java.awt.geom.Rectangle2D plotArea,
                 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 class CategoryPlot
Parameters:
g2 - the graphics device.
plotArea - the area within which the plot (including axis labels) should be drawn.
parentState - the parent state.
info - collects information about the drawing (null permitted).

setOrientation

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

Overrides:
setOrientation in class CategoryPlot
Parameters:
orientation - the orientation.

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 class CategoryPlot
Parameters:
axis - the axis.
Returns:
the range.

getLegendItems

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

Overrides:
getLegendItems in class CategoryPlot
Returns:
the legend items.

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.

handleClick

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

Overrides:
handleClick in class 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.

equals

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

Overrides:
equals in class CategoryPlot
Parameters:
object - the object to test against.
Returns:
true or false.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Returns a clone of the plot.

Specified by:
clone in interface org.jfree.util.PublicCloneable
Overrides:
clone in class CategoryPlot
Returns:
A clone.
Throws:
java.lang.CloneNotSupportedException - this class will not throw this exception, but subclasses (if any) might.