Package org.jfree.chart.plot
Class CombinedDomainXYPlot
java.lang.Object
org.jfree.chart.plot.Plot
org.jfree.chart.plot.XYPlot
org.jfree.chart.plot.CombinedDomainXYPlot
- All Implemented Interfaces:
Serializable
,Cloneable
,EventListener
,AxisChangeListener
,PlotChangeListener
,RendererChangeListener
,ValueAxisPlot
,DatasetChangeListener
,org.jfree.util.PublicCloneable
public class CombinedDomainXYPlot extends XYPlot implements Cloneable, org.jfree.util.PublicCloneable, Serializable, PlotChangeListener
An extension of
XYPlot
that contains multiple subplots that share a
common domain axis.- See Also:
- Serialized Form
-
Field Summary
Fields inherited from class org.jfree.chart.plot.XYPlot
DEFAULT_CROSSHAIR_PAINT, DEFAULT_CROSSHAIR_STROKE, DEFAULT_CROSSHAIR_VISIBLE, DEFAULT_GRIDLINE_PAINT, DEFAULT_GRIDLINE_STROKE
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
-
Constructor Summary
Constructors Constructor Description CombinedDomainXYPlot()
Default constructor.CombinedDomainXYPlot(ValueAxis domainAxis)
Creates a new combined plot that shares a domain axis among multiple subplots. -
Method Summary
Modifier and Type Method Description void
add(XYPlot subplot)
Adds a subplot, with a default 'weight' of 1.void
add(XYPlot subplot, int weight)
Adds a subplot with a particular weight (greater than or equal to one).Object
clone()
Returns a clone of the annotation.void
draw(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)
Draws the plot within the specified area on a graphics device.void
draw(Graphics2D g2, Rectangle2D area, 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 this plot for equality with another 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.String
getPlotType()
Returns a string describing the type of 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 values...void
plotChanged(PlotChangeEvent event)
Receives aPlotChangeEvent
and responds by notifying all listeners.void
remove(XYPlot subplot)
Removes a subplot from the combined chart and sends aPlotChangeEvent
to all registered listeners.void
setGap(double gap)
Sets the amount of space between subplots and sends aPlotChangeEvent
to all registered listeners.void
setOrientation(PlotOrientation orientation)
Sets the orientation for the plot (also changes the orientation for all the subplots to match).void
setRenderer(XYItemRenderer renderer)
Sets the item renderer FOR ALL SUBPLOTS.void
zoom(double percent)
A zoom method that (currently) does nothing.Methods inherited from class org.jfree.chart.plot.XYPlot
addAnnotation, addDomainMarker, addDomainMarker, addDomainMarker, addRangeMarker, addRangeMarker, addRangeMarker, clearAnnotations, clearDomainAxes, clearDomainMarkers, clearRangeAxes, clearRangeMarkers, clearRangeMarkers, configureDomainAxes, configureRangeAxes, datasetChanged, drawAnnotations, drawBackground, drawDomainTickBands, drawRangeTickBands, getAxisOffset, getDataset, getDataset, getDatasetCount, getDatasetRenderingOrder, getDomainAxis, getDomainAxis, getDomainAxisCount, getDomainAxisEdge, getDomainAxisEdge, getDomainAxisForDataset, getDomainAxisLocation, getDomainAxisLocation, getDomainCrosshairPaint, getDomainCrosshairStroke, getDomainCrosshairValue, getDomainGridlinePaint, getDomainGridlineStroke, getDomainMarkers, getDomainMarkers, getDomainTickBandPaint, getFixedDomainAxisSpace, getFixedLegendItems, getFixedRangeAxisSpace, getOrientation, getQuadrantOrigin, getQuadrantPaint, getRangeAxis, getRangeAxis, getRangeAxisCount, getRangeAxisEdge, getRangeAxisEdge, getRangeAxisForDataset, getRangeAxisLocation, getRangeAxisLocation, getRangeCrosshairPaint, getRangeCrosshairStroke, getRangeCrosshairValue, getRangeGridlinePaint, getRangeGridlineStroke, getRangeMarkers, getRangeMarkers, getRangeTickBandPaint, getRenderer, getRenderer, getRendererForDataset, getSeriesCount, getWeight, indexOf, isDomainCrosshairLockedOnData, isDomainCrosshairVisible, isDomainGridlinesVisible, isRangeCrosshairLockedOnData, isRangeCrosshairVisible, isRangeGridlinesVisible, mapDatasetToDomainAxis, mapDatasetToRangeAxis, render, rendererChanged, setAxisOffset, setDataset, setDataset, setDatasetRenderingOrder, setDomainAxis, setDomainAxis, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainCrosshairLockedOnData, setDomainCrosshairPaint, setDomainCrosshairStroke, setDomainCrosshairValue, setDomainCrosshairValue, setDomainCrosshairVisible, setDomainGridlinePaint, setDomainGridlineStroke, setDomainGridlinesVisible, setDomainTickBandPaint, setFixedDomainAxisSpace, setFixedLegendItems, setFixedRangeAxisSpace, setQuadrantOrigin, setQuadrantPaint, setRangeAxis, setRangeAxis, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeCrosshairLockedOnData, setRangeCrosshairPaint, setRangeCrosshairStroke, setRangeCrosshairValue, setRangeCrosshairValue, setRangeCrosshairVisible, setRangeGridlinePaint, setRangeGridlineStroke, setRangeGridlinesVisible, setRangeTickBandPaint, setRenderer, setWeight, zoomHorizontalAxes, zoomHorizontalAxes, zoomVerticalAxes, zoomVerticalAxes
Methods inherited from class org.jfree.chart.plot.Plot
addChangeListener, axisChanged, drawOutline, getBackgroundAlpha, getBackgroundImage, getBackgroundImageAlignment, getBackgroundPaint, getDataAreaRatio, getDatasetGroup, getDrawingSupplier, getForegroundAlpha, getInsets, getNoDataMessage, getNoDataMessageFont, getNoDataMessagePaint, getOutlinePaint, getOutlineStroke, getParent, getRootPlot, isPlotShowing, isSubplot, notifyListeners, removeChangeListener, resolveDomainAxisLocation, resolveRangeAxisLocation, setBackgroundAlpha, setBackgroundImage, setBackgroundImageAlignment, setBackgroundPaint, setDataAreaRatio, setDrawingSupplier, setForegroundAlpha, setInsets, setInsets, setNoDataMessage, setNoDataMessageFont, setNoDataMessagePaint, setOutlinePaint, setOutlineStroke, setParent, setPlotShowing
-
Constructor Details
-
CombinedDomainXYPlot
public CombinedDomainXYPlot()Default constructor. -
CombinedDomainXYPlot
Creates a new combined plot that shares a domain axis among multiple subplots.- Parameters:
domainAxis
- the shared axis.
-
-
Method Details
-
getPlotType
Returns a string describing the type of plot.- Overrides:
getPlotType
in classXYPlot
- Returns:
- The type of plot.
-
setOrientation
Sets the orientation for the plot (also changes the orientation for all the subplots to match).- Overrides:
setOrientation
in classXYPlot
- Parameters:
orientation
- the orientation.
-
getDataRange
Returns the range for the axis. This is the combined range of all the subplots.- Specified by:
getDataRange
in interfaceValueAxisPlot
- Overrides:
getDataRange
in classXYPlot
- Parameters:
axis
- the axis.- Returns:
- The range.
-
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 aPlotChangeEvent
to all registered listeners.- Parameters:
gap
- the gap between subplots (in Java2D units).
-
add
Adds a subplot, with a default 'weight' of 1.The subplot should have a null domain axis.
- Parameters:
subplot
- the subplot.
-
add
Adds a subplot with a particular weight (greater than or equal to one). The weight determines how much space is allocated to the subplot relative to all the other subplots.The domain axis for the subplot will be set to
null
.- Parameters:
subplot
- the subplot.weight
- the weight (must be 1 or greater).
-
remove
Removes a subplot from the combined chart and sends aPlotChangeEvent
to all registered listeners.- Parameters:
subplot
- the subplot (null
not permitted).
-
getSubplots
Returns the list of subplots.- Returns:
- An unmodifiable list of subplots.
-
draw
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. -
draw
public void draw(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)Draws the plot within the specified area on a graphics device.- Overrides:
draw
in classXYPlot
- Parameters:
g2
- the graphics device.area
- the plot area (in Java2D space).anchor
- an anchor point in Java2D space (null
permitted).parentState
- the state from the parent plot, if there is one (null
permitted).info
- collects chart drawing information (null
permitted).
-
getLegendItems
Returns a collection of legend items for the plot.- Overrides:
getLegendItems
in classXYPlot
- Returns:
- the legend items.
-
zoom
public void zoom(double percent)A zoom method that (currently) does nothing. -
setRenderer
Sets the item renderer FOR ALL SUBPLOTS. Registered listeners are notified that the plot has been modified.Note: usually you will want to set the renderer independently for each subplot, which is NOT what this method does.
- Overrides:
setRenderer
in classXYPlot
- Parameters:
renderer
- the new renderer.
-
handleClick
Handles a 'click' on the plot by updating the anchor values...- Overrides:
handleClick
in classXYPlot
- Parameters:
x
- x-coordinate, where the click occured.y
- y-coordinate, where the click occured.info
- object containing information about the plot dimensions.
-
plotChanged
Receives aPlotChangeEvent
and responds by notifying all listeners.- Specified by:
plotChanged
in interfacePlotChangeListener
- Parameters:
event
- the event.
-
equals
Tests this plot for equality with another object. -
clone
Returns a clone of the annotation.- Specified by:
clone
in interfaceorg.jfree.util.PublicCloneable
- Overrides:
clone
in classXYPlot
- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- this class will not throw this exception, but subclasses (if any) might.
-