Header
And More


org.jfree.chart.plot
Class CombinedDomainCategoryPlot

java.lang.Object
  extended by org.jfree.chart.plot.Plot
      extended by org.jfree.chart.plot.CategoryPlot
          extended by org.jfree.chart.plot.CombinedDomainCategoryPlot
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.util.EventListener, AxisChangeListener, MarkerChangeListener, PlotChangeListener, RendererChangeListener, LegendItemSource, Pannable, ValueAxisPlot, Zoomable, DatasetChangeListener, org.jfree.util.PublicCloneable

public class CombinedDomainCategoryPlot
extends CategoryPlot
implements PlotChangeListener

A combined category plot where the domain axis is shared.

See Also:
Serialized Form

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
CombinedDomainCategoryPlot()
          Default constructor.
CombinedDomainCategoryPlot(CategoryAxis domainAxis)
          Creates a new plot.
 
Method Summary
 void add(CategoryPlot subplot)
          Adds a subplot to the combined chart and sends a PlotChangeEvent to all registered listeners.
 void add(CategoryPlot subplot, int weight)
          Adds a subplot to the combined chart and sends a PlotChangeEvent to all registered listeners.
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 area, java.awt.geom.Point2D anchor, 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 obj)
          Tests the plot for equality with an arbitrary object.
 CategoryPlot findSubplot(PlotRenderingInfo info, java.awt.geom.Point2D source)
          Returns the subplot (if any) that contains the (x, y) point (specified in Java2D space).
 java.util.List getCategories()
          Returns an unmodifiable list of the categories contained in all the subplots.
 java.util.List getCategoriesForAxis(CategoryAxis axis)
          Overridden to return the categories in the subplots.
 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.
 double getGap()
          Returns the space between subplots.
 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.
 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 setFixedRangeAxisSpaceForSubplots(AxisSpace space)
          Sets the size (width or height, depending on the orientation of the plot) for the range 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 of the plot (and all subplots).
 void zoomRangeAxes(double lowerPercent, double upperPercent, PlotRenderingInfo info, java.awt.geom.Point2D source)
          Zooms in on the range axes.
 void zoomRangeAxes(double factor, PlotRenderingInfo info, java.awt.geom.Point2D source)
          Multiplies the range on the range axis/axes by the specified factor.
 void zoomRangeAxes(double factor, PlotRenderingInfo info, java.awt.geom.Point2D source, boolean useAnchor)
          Multiplies the range on the range axis/axes by the specified factor.
 
Methods inherited from class org.jfree.chart.plot.CategoryPlot
addAnnotation, addAnnotation, addDomainMarker, addDomainMarker, addDomainMarker, addDomainMarker, addRangeMarker, addRangeMarker, addRangeMarker, addRangeMarker, calculateDomainAxisSpace, calculateRangeAxisSpace, clearAnnotations, clearDomainAxes, clearDomainMarkers, clearDomainMarkers, clearRangeAxes, clearRangeMarkers, clearRangeMarkers, configureDomainAxes, configureRangeAxes, datasetChanged, drawAnnotations, drawAxes, drawBackground, drawDomainCrosshair, drawDomainGridlines, drawDomainMarkers, drawRangeCrosshair, drawRangeGridlines, drawRangeLine, drawRangeMarkers, drawZeroRangeBaseline, getAnchorValue, getAnnotations, getAxisOffset, getColumnRenderingOrder, getCrosshairDatasetIndex, getDataset, getDataset, getDatasetCount, getDatasetRenderingOrder, getDomainAxis, getDomainAxis, getDomainAxisCount, getDomainAxisEdge, getDomainAxisEdge, getDomainAxisForDataset, getDomainAxisIndex, getDomainAxisLocation, getDomainAxisLocation, getDomainCrosshairColumnKey, getDomainCrosshairPaint, getDomainCrosshairRowKey, getDomainCrosshairStroke, getDomainGridlinePaint, getDomainGridlinePosition, getDomainGridlineStroke, getDomainMarkers, getDomainMarkers, getDrawSharedDomainAxis, getFixedDomainAxisSpace, getFixedLegendItems, getFixedRangeAxisSpace, getIndexOf, getOrientation, getPlotType, getRangeAxis, getRangeAxis, getRangeAxisCount, getRangeAxisEdge, getRangeAxisEdge, getRangeAxisForDataset, getRangeAxisIndex, getRangeAxisLocation, getRangeAxisLocation, getRangeCrosshairPaint, getRangeCrosshairStroke, getRangeCrosshairValue, getRangeGridlinePaint, getRangeGridlineStroke, getRangeMarkers, getRangeMarkers, getRangeMinorGridlinePaint, getRangeMinorGridlineStroke, getRangeZeroBaselinePaint, getRangeZeroBaselineStroke, getRenderer, getRenderer, getRendererCount, getRendererForDataset, getRowRenderingOrder, getWeight, indexOf, isDomainCrosshairVisible, isDomainGridlinesVisible, isDomainPannable, isDomainZoomable, isRangeCrosshairLockedOnData, isRangeCrosshairVisible, isRangeGridlinesVisible, isRangeMinorGridlinesVisible, isRangePannable, isRangeZeroBaselineVisible, isRangeZoomable, mapDatasetToDomainAxes, mapDatasetToDomainAxis, mapDatasetToRangeAxes, mapDatasetToRangeAxis, panDomainAxes, panRangeAxes, removeAnnotation, removeAnnotation, removeDomainMarker, removeDomainMarker, removeDomainMarker, removeDomainMarker, removeRangeMarker, removeRangeMarker, removeRangeMarker, removeRangeMarker, render, rendererChanged, setAnchorValue, setAnchorValue, setAxisOffset, setColumnRenderingOrder, setCrosshairDatasetIndex, setCrosshairDatasetIndex, setDataset, setDataset, setDatasetRenderingOrder, setDomainAxes, setDomainAxis, setDomainAxis, setDomainAxis, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainCrosshairColumnKey, setDomainCrosshairColumnKey, setDomainCrosshairPaint, setDomainCrosshairRowKey, setDomainCrosshairRowKey, setDomainCrosshairStroke, setDomainCrosshairVisible, setDomainGridlinePaint, setDomainGridlinePosition, setDomainGridlineStroke, setDomainGridlinesVisible, setDrawSharedDomainAxis, setFixedDomainAxisSpace, setFixedDomainAxisSpace, setFixedLegendItems, setFixedRangeAxisSpace, setFixedRangeAxisSpace, setRangeAxes, setRangeAxis, setRangeAxis, setRangeAxis, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeCrosshairLockedOnData, setRangeCrosshairPaint, setRangeCrosshairStroke, setRangeCrosshairValue, setRangeCrosshairValue, setRangeCrosshairVisible, setRangeGridlinePaint, setRangeGridlineStroke, setRangeGridlinesVisible, setRangeMinorGridlinePaint, setRangeMinorGridlineStroke, setRangeMinorGridlinesVisible, setRangePannable, setRangeZeroBaselinePaint, setRangeZeroBaselineStroke, setRangeZeroBaselineVisible, setRenderer, setRenderer, setRenderer, setRenderer, setRenderers, setRowRenderingOrder, setWeight, zoom, zoomDomainAxes, zoomDomainAxes, zoomDomainAxes
 
Methods inherited from class org.jfree.chart.plot.Plot
addChangeListener, axisChanged, createAndAddEntity, drawBackgroundImage, drawNoDataMessage, drawOutline, fillBackground, fillBackground, fireChangeEvent, getBackgroundAlpha, getBackgroundImage, getBackgroundImageAlignment, getBackgroundImageAlpha, getBackgroundPaint, getDatasetGroup, getDrawingSupplier, getForegroundAlpha, getInsets, getNoDataMessage, getNoDataMessageFont, getNoDataMessagePaint, getOutlinePaint, getOutlineStroke, getParent, getRectX, getRectY, getRootPlot, isNotify, isOutlineVisible, isSubplot, markerChanged, notifyListeners, removeChangeListener, resolveDomainAxisLocation, resolveRangeAxisLocation, setBackgroundAlpha, setBackgroundImage, setBackgroundImageAlignment, setBackgroundImageAlpha, setBackgroundPaint, setDatasetGroup, setDrawingSupplier, setDrawingSupplier, setForegroundAlpha, setInsets, setInsets, setNoDataMessage, setNoDataMessageFont, setNoDataMessagePaint, setNotify, setOutlinePaint, setOutlineStroke, setOutlineVisible, setParent
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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

getGap

public double getGap()
Returns the space between subplots.

Returns:
The gap (in Java2D units).

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

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

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

getSubplots

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

Returns:
An unmodifiable list of subplots.

findSubplot

public CategoryPlot findSubplot(PlotRenderingInfo info,
                                java.awt.geom.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).

zoomRangeAxes

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

Specified by:
zoomRangeAxes in interface Zoomable
Overrides:
zoomRangeAxes in class CategoryPlot
Parameters:
factor - the zoom factor.
info - the plot rendering info (null not permitted).
source - the source point (null not permitted).
See Also:
Zoomable.zoomDomainAxes(double, PlotRenderingInfo, Point2D)

zoomRangeAxes

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

Specified by:
zoomRangeAxes in interface Zoomable
Overrides:
zoomRangeAxes in class CategoryPlot
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?
See Also:
CategoryPlot.zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)

zoomRangeAxes

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

Specified by:
zoomRangeAxes in interface Zoomable
Overrides:
zoomRangeAxes in class CategoryPlot
Parameters:
lowerPercent - the lower bound.
upperPercent - the upper bound.
info - the plot rendering info (null not permitted).
source - the source point (null not permitted).
See Also:
Zoomable.zoomDomainAxes(double, double, PlotRenderingInfo, Point2D)

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 area,
                 java.awt.geom.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.

Overrides:
draw in class 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 state from the parent plot, if there is one.
info - collects information about the drawing (null 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).

setOrientation

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

Overrides:
setOrientation in class CategoryPlot
Parameters:
orientation - the orientation (null not permitted).
See Also:
CategoryPlot.getOrientation()

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

Specified by:
getLegendItems in interface LegendItemSource
Overrides:
getLegendItems in class CategoryPlot
Returns:
The legend items.

getCategories

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

Overrides:
getCategories in class CategoryPlot
Returns:
The list.
See Also:
CategoryPlot.getCategoriesForAxis(CategoryAxis)

getCategoriesForAxis

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

Overrides:
getCategoriesForAxis in class CategoryPlot
Parameters:
axis - ignored.
Returns:
A list of the categories in the subplots.
Since:
1.0.3

handleClick

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

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 obj)
Tests the plot for equality with an arbitrary object.

Overrides:
equals in class CategoryPlot
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

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.

Footer
And More


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