Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
org.jfree.chart.plot.Plot
org.jfree.chart.plot.XYPlot
org.jfree.chart.plot.CombinedDomainXYPlot
public class CombinedDomainXYPlot
extends XYPlot
implements Cloneable, PublicCloneable, Serializable, PlotChangeListener
XYPlot
that contains multiple subplots that share a
common domain axis.
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 , 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 | |
| |
|
Method Summary | |
void |
|
void |
|
protected AxisSpace |
|
Object |
|
void |
|
boolean |
|
XYPlot |
|
Range |
|
double |
|
LegendItemCollection |
|
String |
|
List |
|
void |
|
void |
|
void |
|
void |
|
protected void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
public CombinedDomainXYPlot(ValueAxis domainAxis)
Creates a new combined plot that shares a domain axis among multiple subplots.
- Parameters:
domainAxis
- the shared axis.
public void add(XYPlot subplot)
Adds a subplot (with a default 'weight' of 1) and sends aPlotChangeEvent
to all registered listeners. The domain axis for the subplot will be set tonull
. You must ensure that the subplot has a non-null range axis.
- Parameters:
subplot
- the subplot (null
not permitted).
public void add(XYPlot subplot, int weight)
Adds a subplot with the specified weight and sends aPlotChangeEvent
to all registered listeners. 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 tonull
. 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).
protected AxisSpace calculateAxisSpace(Graphics2D g2, Rectangle2D plotArea)
Calculates the axis space required.
- Overrides:
- calculateAxisSpace in interface XYPlot
- Parameters:
g2
- the graphics device.plotArea
- the plot area.
- Returns:
- The space.
public Object clone() throws CloneNotSupportedException
Returns a clone of the annotation.
- Returns:
- A clone.
public void draw(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)
Draws the plot within the specified area on a graphics device.
- 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).
public boolean equals(Object obj)
Tests this plot for equality with another object.
- Parameters:
obj
- the other object.
- Returns:
true
orfalse
.
public XYPlot 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.source
- the source point.
- Returns:
- A subplot (possibly
null
).
public Range getDataRange(ValueAxis axis)
Returns the range for the specified axis. This is the combined range of all the subplots.
- Specified by:
- getDataRange in interface ValueAxisPlot
- Overrides:
- getDataRange in interface XYPlot
- Parameters:
axis
- the axis.
- Returns:
- The range (possibly
null
).
public double getGap()
Returns the gap between subplots, measured in Java2D units.
- Returns:
- The gap (in Java2D units).
public LegendItemCollection getLegendItems()
Returns a collection of legend items for the plot.
- Specified by:
- getLegendItems in interface LegendItemSource
- Overrides:
- getLegendItems in interface XYPlot
- Returns:
- The legend items.
public String getPlotType()
Returns a string describing the type of plot.
- Overrides:
- getPlotType in interface XYPlot
- Returns:
- The type of plot.
public List getSubplots()
Returns the list of subplots.
- Returns:
- An unmodifiable list of subplots.
public void handleClick(int x, int y, PlotRenderingInfo info)
Handles a 'click' on the plot by updating the anchor values.
- Overrides:
- handleClick in interface XYPlot
- Parameters:
x
- x-coordinate, where the click occured.y
- y-coordinate, where the click occured.info
- object containing information about the plot dimensions.
public void plotChanged(PlotChangeEvent event)
Receives aPlotChangeEvent
and responds by notifying all listeners.
- Specified by:
- plotChanged in interface PlotChangeListener
- Parameters:
event
- the event.
public void remove(XYPlot subplot)
Removes a subplot from the combined chart and sends aPlotChangeEvent
to all registered listeners.
- Parameters:
subplot
- the subplot (null
not permitted).
public void setFixedRangeAxisSpace(AxisSpace space)
Sets the fixed range axis space.
- Overrides:
- setFixedRangeAxisSpace in interface XYPlot
- Parameters:
space
- the space (null
permitted).
protected void setFixedRangeAxisSpaceForSubplots(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.
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).
public void setOrientation(PlotOrientation orientation)
Sets the orientation for the plot (also changes the orientation for all the subplots to match).
- Overrides:
- setOrientation in interface XYPlot
- Parameters:
orientation
- the orientation (null
not allowed).
public void setRenderer(XYItemRenderer renderer)
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 interface XYPlot
- Parameters:
renderer
- the new renderer.
public void zoomRangeAxes(double lowerPercent, double upperPercent, PlotRenderingInfo info, Point2D source)
Zooms in on the range axes.
- Specified by:
- zoomRangeAxes in interface Zoomable
- Overrides:
- zoomRangeAxes in interface XYPlot
- Parameters:
lowerPercent
- the lower bound.upperPercent
- the upper bound.info
- the plot rendering info.source
- the source point.
public void zoomRangeAxes(double factor, PlotRenderingInfo info, Point2D source)
Multiplies the range on the range axis/axes by the specified factor.
- Specified by:
- zoomRangeAxes in interface Zoomable
- Overrides:
- zoomRangeAxes in interface XYPlot
- Parameters:
factor
- the zoom factor.info
- the plot rendering info.source
- the source point.