public class CombinedDomainCategoryPlot extends CategoryPlot implements PlotChangeListener
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
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 |
---|
CombinedDomainCategoryPlot()
Default constructor.
|
CombinedDomainCategoryPlot(CategoryAxis domainAxis)
Creates a new plot.
|
Modifier and Type | Method and Description |
---|---|
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 |
setShadowGenerator(ShadowGenerator generator)
Sets the shadow generator for the plot (and all subplots) and sends
a
PlotChangeEvent to all registered listeners. |
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.
|
addAnnotation, addAnnotation, addDomainMarker, addDomainMarker, addDomainMarker, addDomainMarker, addRangeMarker, addRangeMarker, addRangeMarker, addRangeMarker, annotationChanged, 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, getShadowGenerator, 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
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
public CombinedDomainCategoryPlot()
public CombinedDomainCategoryPlot(CategoryAxis domainAxis)
domainAxis
- the shared domain axis (null
not
permitted).public double getGap()
setGap(double)
public void setGap(double gap)
PlotChangeEvent
to all registered listeners.gap
- the gap between subplots (in Java2D units).getGap()
public void add(CategoryPlot subplot)
PlotChangeEvent
to all registered listeners.
null
. You
must ensure that the subplot has a non-null range axis.subplot
- the subplot (null
not permitted).public void add(CategoryPlot subplot, int weight)
PlotChangeEvent
to all registered listeners.
null
. You
must ensure that the subplot has a non-null range axis.subplot
- the subplot (null
not permitted).weight
- the weight (must be >= 1).public void remove(CategoryPlot subplot)
PlotChangeEvent
is sent to
all registered listeners.subplot
- the subplot (null
not permitted).public java.util.List getSubplots()
null
.public CategoryPlot findSubplot(PlotRenderingInfo info, java.awt.geom.Point2D source)
info
- the chart rendering info (null
not permitted).source
- the source point (null
not permitted).null
).public void zoomRangeAxes(double factor, PlotRenderingInfo info, java.awt.geom.Point2D source)
zoomRangeAxes
in interface Zoomable
zoomRangeAxes
in class CategoryPlot
factor
- the zoom factor.info
- the plot rendering info (null
not permitted).source
- the source point (null
not permitted).Zoomable.zoomDomainAxes(double, PlotRenderingInfo, Point2D)
public void zoomRangeAxes(double factor, PlotRenderingInfo info, java.awt.geom.Point2D source, boolean useAnchor)
zoomRangeAxes
in interface Zoomable
zoomRangeAxes
in class CategoryPlot
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?CategoryPlot.zoomDomainAxes(double, PlotRenderingInfo, Point2D, boolean)
public void zoomRangeAxes(double lowerPercent, double upperPercent, PlotRenderingInfo info, java.awt.geom.Point2D source)
zoomRangeAxes
in interface Zoomable
zoomRangeAxes
in class CategoryPlot
lowerPercent
- the lower bound.upperPercent
- the upper bound.info
- the plot rendering info (null
not permitted).source
- the source point (null
not permitted).Zoomable.zoomDomainAxes(double, double, PlotRenderingInfo, Point2D)
protected AxisSpace calculateAxisSpace(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D plotArea)
calculateAxisSpace
in class CategoryPlot
g2
- the graphics device.plotArea
- the plot area.public void draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D area, java.awt.geom.Point2D anchor, PlotState parentState, PlotRenderingInfo info)
draw
in class CategoryPlot
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).protected void setFixedRangeAxisSpaceForSubplots(AxisSpace space)
space
- the space (null
permitted).public void setOrientation(PlotOrientation orientation)
setOrientation
in class CategoryPlot
orientation
- the orientation (null
not permitted).CategoryPlot.getOrientation()
public void setShadowGenerator(ShadowGenerator generator)
PlotChangeEvent
to all registered listeners.setShadowGenerator
in class CategoryPlot
generator
- the new generator (null
permitted).public Range getDataRange(ValueAxis axis)
CategoryAxis
(not a ValueAxis
) and subplots have independent range axes,
the JFreeChart code will never call this method (although this is not
checked/enforced).getDataRange
in interface ValueAxisPlot
getDataRange
in class CategoryPlot
axis
- the axis.public LegendItemCollection getLegendItems()
getLegendItems
in interface LegendItemSource
getLegendItems
in class CategoryPlot
public java.util.List getCategories()
getCategories
in class CategoryPlot
CategoryPlot.getCategoriesForAxis(CategoryAxis)
public java.util.List getCategoriesForAxis(CategoryAxis axis)
getCategoriesForAxis
in class CategoryPlot
axis
- ignored.public void handleClick(int x, int y, PlotRenderingInfo info)
handleClick
in class CategoryPlot
x
- x-coordinate of the click.y
- y-coordinate of the click.info
- information about the plot's dimensions.public void plotChanged(PlotChangeEvent event)
PlotChangeEvent
and responds by notifying all
listeners.plotChanged
in interface PlotChangeListener
event
- the event.public boolean equals(java.lang.Object obj)
equals
in class CategoryPlot
obj
- the object (null
permitted).public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in interface org.jfree.util.PublicCloneable
clone
in class CategoryPlot
java.lang.CloneNotSupportedException
- this class will not throw this
exception, but subclasses (if any) might.