public class CombinedRangeXYPlot extends XYPlot implements PlotChangeListener
XYPlot
that contains multiple subplots that share a
common range axis.DEFAULT_CROSSHAIR_PAINT, DEFAULT_CROSSHAIR_STROKE, DEFAULT_CROSSHAIR_VISIBLE, DEFAULT_GRIDLINE_PAINT, DEFAULT_GRIDLINE_STROKE
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 and Description |
---|
CombinedRangeXYPlot()
Default constructor.
|
CombinedRangeXYPlot(ValueAxis rangeAxis)
Creates a new plot.
|
Modifier and Type | Method and 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 plot.
|
void |
draw(Graphics2D g2,
Rectangle2D area,
Point2D anchor,
PlotState parentState,
PlotRenderingInfo info)
Draws the plot within the specified area on a graphics device.
|
boolean |
equals(Object obj)
Tests this plot for equality with another object.
|
XYPlot |
findSubplot(PlotRenderingInfo info,
Point2D source)
Returns the subplot (if any) that contains the (x, y) point (specified
in Java2D space).
|
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.
|
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...
|
boolean |
isDomainPannable()
Returns
true if the domain is pannable for at least one subplot,
and false otherwise. |
void |
panDomainAxes(double panRange,
PlotRenderingInfo info,
Point2D source)
Pans all domain axes by the specified percentage.
|
void |
plotChanged(PlotChangeEvent event)
Receives a
PlotChangeEvent and responds by notifying all
listeners. |
void |
remove(XYPlot subplot)
Removes a subplot from the combined chart.
|
void |
setDomainPannable(boolean pannable)
Sets the flag, on each of the subplots, that controls whether or not the
domain is pannable.
|
void |
setGap(double gap)
Sets the amount of space between subplots.
|
void |
setOrientation(PlotOrientation orientation)
Sets the orientation for the plot (and all its subplots).
|
void |
setRenderer(XYItemRenderer renderer)
Sets the item renderer FOR ALL SUBPLOTS.
|
void |
setShadowGenerator(ShadowGenerator generator)
Sets the shadow generator for the plot (and all subplots) and sends
a
PlotChangeEvent to all registered listeners. |
void |
zoomDomainAxes(double lowerPercent,
double upperPercent,
PlotRenderingInfo info,
Point2D source)
Zooms in on the domain axes.
|
void |
zoomDomainAxes(double factor,
PlotRenderingInfo info,
Point2D source)
Multiplies the range on the domain axis/axes by the specified factor.
|
void |
zoomDomainAxes(double factor,
PlotRenderingInfo info,
Point2D source,
boolean useAnchor)
Multiplies the range on the domain axis/axes by the specified factor.
|
addAnnotation, addAnnotation, addDomainMarker, addDomainMarker, addDomainMarker, addDomainMarker, addRangeMarker, addRangeMarker, addRangeMarker, addRangeMarker, annotationChanged, clearAnnotations, clearDomainAxes, clearDomainMarkers, clearDomainMarkers, clearRangeAxes, clearRangeMarkers, clearRangeMarkers, configureDomainAxes, configureRangeAxes, datasetChanged, drawAnnotations, drawBackground, drawDomainTickBands, drawRangeTickBands, getAnnotations, getAxisOffset, getDataset, getDataset, getDatasetCount, getDatasetRenderingOrder, getDomainAxis, getDomainAxis, getDomainAxisCount, getDomainAxisEdge, getDomainAxisEdge, getDomainAxisForDataset, getDomainAxisIndex, getDomainAxisLocation, getDomainAxisLocation, getDomainCrosshairPaint, getDomainCrosshairStroke, getDomainCrosshairValue, getDomainGridlinePaint, getDomainGridlineStroke, getDomainMarkers, getDomainMarkers, getDomainMinorGridlinePaint, getDomainMinorGridlineStroke, getDomainTickBandPaint, getDomainZeroBaselinePaint, getDomainZeroBaselineStroke, getFixedDomainAxisSpace, getFixedLegendItems, getFixedRangeAxisSpace, getIndexOf, getOrientation, getQuadrantOrigin, getQuadrantPaint, getRangeAxis, getRangeAxis, getRangeAxisCount, getRangeAxisEdge, getRangeAxisEdge, getRangeAxisForDataset, getRangeAxisIndex, getRangeAxisLocation, getRangeAxisLocation, getRangeCrosshairPaint, getRangeCrosshairStroke, getRangeCrosshairValue, getRangeGridlinePaint, getRangeGridlineStroke, getRangeMarkers, getRangeMarkers, getRangeMinorGridlinePaint, getRangeMinorGridlineStroke, getRangeTickBandPaint, getRangeZeroBaselinePaint, getRangeZeroBaselineStroke, getRenderer, getRenderer, getRendererCount, getRendererForDataset, getSeriesCount, getSeriesRenderingOrder, getShadowGenerator, getWeight, indexOf, isDomainCrosshairLockedOnData, isDomainCrosshairVisible, isDomainGridlinesVisible, isDomainMinorGridlinesVisible, isDomainZeroBaselineVisible, isDomainZoomable, isRangeCrosshairLockedOnData, isRangeCrosshairVisible, isRangeGridlinesVisible, isRangeMinorGridlinesVisible, isRangePannable, isRangeZeroBaselineVisible, isRangeZoomable, mapDatasetToDomainAxes, mapDatasetToDomainAxis, mapDatasetToRangeAxes, mapDatasetToRangeAxis, panRangeAxes, removeAnnotation, removeAnnotation, removeDomainMarker, removeDomainMarker, removeDomainMarker, removeDomainMarker, removeRangeMarker, removeRangeMarker, removeRangeMarker, removeRangeMarker, render, rendererChanged, setAxisOffset, setDataset, setDataset, setDatasetRenderingOrder, setDomainAxes, setDomainAxis, setDomainAxis, setDomainAxis, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainAxisLocation, setDomainCrosshairLockedOnData, setDomainCrosshairPaint, setDomainCrosshairStroke, setDomainCrosshairValue, setDomainCrosshairValue, setDomainCrosshairVisible, setDomainGridlinePaint, setDomainGridlineStroke, setDomainGridlinesVisible, setDomainMinorGridlinePaint, setDomainMinorGridlineStroke, setDomainMinorGridlinesVisible, setDomainTickBandPaint, setDomainZeroBaselinePaint, setDomainZeroBaselineStroke, setDomainZeroBaselineVisible, setFixedDomainAxisSpace, setFixedDomainAxisSpace, setFixedLegendItems, setFixedRangeAxisSpace, setFixedRangeAxisSpace, setQuadrantOrigin, setQuadrantPaint, setRangeAxes, setRangeAxis, setRangeAxis, setRangeAxis, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeAxisLocation, setRangeCrosshairLockedOnData, setRangeCrosshairPaint, setRangeCrosshairStroke, setRangeCrosshairValue, setRangeCrosshairValue, setRangeCrosshairVisible, setRangeGridlinePaint, setRangeGridlineStroke, setRangeGridlinesVisible, setRangeMinorGridlinePaint, setRangeMinorGridlineStroke, setRangeMinorGridlinesVisible, setRangePannable, setRangeTickBandPaint, setRangeZeroBaselinePaint, setRangeZeroBaselineStroke, setRangeZeroBaselineVisible, setRenderer, setRenderer, setRenderers, setSeriesRenderingOrder, setWeight, zoomRangeAxes, zoomRangeAxes, zoomRangeAxes
addChangeListener, axisChanged, drawBackgroundImage, drawOutline, getBackgroundAlpha, getBackgroundImage, getBackgroundImageAlignment, getBackgroundImageAlpha, getBackgroundPaint, getDatasetGroup, getDrawingSupplier, getForegroundAlpha, getInsets, getNoDataMessage, getNoDataMessageFont, getNoDataMessagePaint, getOutlinePaint, getOutlineStroke, getParent, getRootPlot, isNotify, isOutlineVisible, isSubplot, markerChanged, notifyListeners, removeChangeListener, resolveDomainAxisLocation, resolveRangeAxisLocation, setBackgroundAlpha, setBackgroundImage, setBackgroundImageAlignment, setBackgroundImageAlpha, setBackgroundPaint, setDrawingSupplier, setDrawingSupplier, setForegroundAlpha, setInsets, setInsets, setNoDataMessage, setNoDataMessageFont, setNoDataMessagePaint, setNotify, setOutlinePaint, setOutlineStroke, setOutlineVisible, setParent, zoom
public CombinedRangeXYPlot()
public CombinedRangeXYPlot(ValueAxis rangeAxis)
rangeAxis
- the shared axis.public String getPlotType()
getPlotType
in class XYPlot
public double getGap()
setGap(double)
public void setGap(double gap)
gap
- the gap between subplots.getGap()
public boolean isDomainPannable()
true
if the domain is pannable for at least one subplot,
and false
otherwise.isDomainPannable
in interface Pannable
isDomainPannable
in class XYPlot
public void setDomainPannable(boolean pannable)
setDomainPannable
in class XYPlot
pannable
- the new flag value.public void add(XYPlot subplot)
null
.subplot
- the subplot.public void add(XYPlot subplot, int weight)
null
.subplot
- the subplot (null
not permitted).weight
- the weight (must be 1 or greater).public void remove(XYPlot subplot)
subplot
- the subplot (null
not permitted).public List getSubplots()
null
.public void draw(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)
draw
in class XYPlot
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 LegendItemCollection getLegendItems()
getLegendItems
in interface LegendItemSource
getLegendItems
in class XYPlot
public void zoomDomainAxes(double factor, PlotRenderingInfo info, Point2D source)
zoomDomainAxes
in interface Zoomable
zoomDomainAxes
in class XYPlot
factor
- the zoom factor.info
- the plot rendering info (null
not permitted).source
- the source point (null
not permitted).XYPlot.zoomRangeAxes(double, PlotRenderingInfo, Point2D)
public void zoomDomainAxes(double factor, PlotRenderingInfo info, Point2D source, boolean useAnchor)
zoomDomainAxes
in interface Zoomable
zoomDomainAxes
in class XYPlot
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?XYPlot.zoomRangeAxes(double, PlotRenderingInfo, Point2D, boolean)
public void zoomDomainAxes(double lowerPercent, double upperPercent, PlotRenderingInfo info, Point2D source)
zoomDomainAxes
in interface Zoomable
zoomDomainAxes
in class XYPlot
lowerPercent
- the lower bound.upperPercent
- the upper bound.info
- the plot rendering info (null
not permitted).source
- the source point (null
not permitted).XYPlot.zoomRangeAxes(double, double, PlotRenderingInfo, Point2D)
public void panDomainAxes(double panRange, PlotRenderingInfo info, Point2D source)
panDomainAxes
in interface Pannable
panDomainAxes
in class XYPlot
panRange
- the distance to pan (as a percentage of the axis length).info
- the plot infosource
- the source point where the pan action started.public XYPlot findSubplot(PlotRenderingInfo info, Point2D source)
info
- the chart rendering info (null
not permitted).source
- the source point (null
not permitted).null
).public void setRenderer(XYItemRenderer renderer)
Note: usually you will want to set the renderer independently for each subplot, which is NOT what this method does.
setRenderer
in class XYPlot
renderer
- the new renderer.XYPlot.getRenderer()
public void setOrientation(PlotOrientation orientation)
setOrientation
in class XYPlot
orientation
- the orientation.XYPlot.getOrientation()
public void setShadowGenerator(ShadowGenerator generator)
PlotChangeEvent
to all registered listeners.setShadowGenerator
in class XYPlot
generator
- the new generator (null
permitted).public Range getDataRange(ValueAxis axis)
getDataRange
in interface ValueAxisPlot
getDataRange
in class XYPlot
axis
- the axis.public void handleClick(int x, int y, PlotRenderingInfo info)
handleClick
in class XYPlot
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)
PlotChangeEvent
and responds by notifying all
listeners.plotChanged
in interface PlotChangeListener
event
- the event.public boolean equals(Object obj)
public Object clone() throws CloneNotSupportedException
clone
in interface org.jfree.util.PublicCloneable
clone
in class XYPlot
CloneNotSupportedException
- this class will not throw this
exception, but subclasses (if any) might.Jas4pp 1.5 © Java Analysis Studio for Particle Physics