public class StackedBarRenderer3D extends BarRenderer3D implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable
CategoryPlot
class. The example shown here is generated by the
StackedBarChart3DDemo1.java
program included in the
JFreeChart Demo Collection:
DEFAULT_WALL_PAINT, DEFAULT_X_OFFSET, DEFAULT_Y_OFFSET
BAR_OUTLINE_WIDTH_THRESHOLD, DEFAULT_ITEM_MARGIN
DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, DEFAULT_PAINT, DEFAULT_SHAPE, DEFAULT_STROKE, DEFAULT_VALUE_LABEL_FONT, DEFAULT_VALUE_LABEL_PAINT, ZERO
Constructor and Description |
---|
StackedBarRenderer3D()
Creates a new renderer with no tool tip generator and no URL generator.
|
StackedBarRenderer3D(boolean renderAsPercentages)
Creates a new renderer.
|
StackedBarRenderer3D(double xOffset,
double yOffset)
Constructs a new renderer with the specified '3D effect'.
|
StackedBarRenderer3D(double xOffset,
double yOffset,
boolean renderAsPercentages)
Constructs a new renderer with the specified '3D effect'.
|
Modifier and Type | Method and Description |
---|---|
protected void |
calculateBarWidth(CategoryPlot plot,
java.awt.geom.Rectangle2D dataArea,
int rendererIndex,
CategoryItemRendererState state)
Calculates the bar width and stores it in the renderer state.
|
protected java.util.List |
createStackedValueList(CategoryDataset dataset,
java.lang.Comparable category,
double base,
boolean asPercentages)
Deprecated.
As of 1.0.13, use
createStackedValueList(
CategoryDataset, Comparable, int[], double, boolean) . |
protected java.util.List |
createStackedValueList(CategoryDataset dataset,
java.lang.Comparable category,
int[] includedRows,
double base,
boolean asPercentages)
Returns a list containing the stacked values for the specified series
in the given dataset, plus the supplied base value.
|
void |
drawItem(java.awt.Graphics2D g2,
CategoryItemRendererState state,
java.awt.geom.Rectangle2D dataArea,
CategoryPlot plot,
CategoryAxis domainAxis,
ValueAxis rangeAxis,
CategoryDataset dataset,
int row,
int column,
int pass)
Draws the visual representation of one data item from the chart (in
fact, this method does nothing until it reaches the last item for each
category, at which point it draws all the items for that category).
|
protected void |
drawStackHorizontal(java.util.List values,
java.lang.Comparable category,
java.awt.Graphics2D g2,
CategoryItemRendererState state,
java.awt.geom.Rectangle2D dataArea,
CategoryPlot plot,
CategoryAxis domainAxis,
ValueAxis rangeAxis,
CategoryDataset dataset)
Draws a stack of bars for one category, with a horizontal orientation.
|
protected void |
drawStackVertical(java.util.List values,
java.lang.Comparable category,
java.awt.Graphics2D g2,
CategoryItemRendererState state,
java.awt.geom.Rectangle2D dataArea,
CategoryPlot plot,
CategoryAxis domainAxis,
ValueAxis rangeAxis,
CategoryDataset dataset)
Draws a stack of bars for one category, with a vertical orientation.
|
boolean |
equals(java.lang.Object obj)
Tests this renderer for equality with an arbitrary object.
|
Range |
findRangeBounds(CategoryDataset dataset)
Returns the range of values the renderer requires to display all the
items from the specified dataset.
|
boolean |
getIgnoreZeroValues()
Returns the flag that controls whether or not zero values are drawn
by the renderer.
|
boolean |
getRenderAsPercentages()
Returns
true if the renderer displays each item value as
a percentage (so that the stacked bars add to 100%), and
false otherwise. |
int |
hashCode()
Returns a hash code for this instance.
|
void |
setIgnoreZeroValues(boolean ignore)
Sets a flag that controls whether or not zero values are drawn by the
renderer, and sends a
RendererChangeEvent to all registered
listeners. |
void |
setRenderAsPercentages(boolean asPercentages)
Sets the flag that controls whether the renderer displays each item
value as a percentage (so that the stacked bars add to 100%), and sends
a
RendererChangeEvent to all registered listeners. |
drawBackground, drawDomainGridline, drawOutline, drawRangeGridline, drawRangeLine, drawRangeMarker, getWallPaint, getXOffset, getYOffset, initialise, setWallPaint
calculateBarL0L1, calculateBarW0, calculateSeriesWidth, drawItemLabel, findRangeBounds, getBarPainter, getBase, getDefaultBarPainter, getDefaultShadowsVisible, getGradientPaintTransformer, getIncludeBaseInRange, getItemMargin, getLegendItem, getLowerClip, getMaximumBarWidth, getMinimumBarLength, getNegativeItemLabelPositionFallback, getPositiveItemLabelPositionFallback, getShadowPaint, getShadowsVisible, getShadowXOffset, getShadowYOffset, getUpperClip, isDrawBarOutline, setBarPainter, setBase, setDefaultBarPainter, setDefaultShadowsVisible, setDrawBarOutline, setGradientPaintTransformer, setIncludeBaseInRange, setItemMargin, setMaximumBarWidth, setMinimumBarLength, setNegativeItemLabelPositionFallback, setPositiveItemLabelPositionFallback, setShadowPaint, setShadowVisible, setShadowXOffset, setShadowYOffset
addEntity, addItemEntity, calculateDomainMarkerTextAnchorPoint, calculateRangeMarkerTextAnchorPoint, clone, createState, drawDomainMarker, drawItemLabel, getBaseItemLabelGenerator, getBaseItemURLGenerator, getBaseToolTipGenerator, getColumnCount, getDomainAxis, getDrawingSupplier, getItemLabelGenerator, getItemMiddle, getItemURLGenerator, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPassCount, getPlot, getRangeAxis, getRowCount, getSeriesItemLabelGenerator, getSeriesItemURLGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getToolTipGenerator, setBaseItemLabelGenerator, setBaseItemURLGenerator, setBaseToolTipGenerator, setItemLabelGenerator, setItemURLGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesItemURLGenerator, setSeriesToolTipGenerator, setToolTipGenerator, updateCrosshairValues
addChangeListener, calculateLabelAnchorPoint, clearSeriesPaints, clearSeriesStrokes, fireChangeEvent, getAutoPopulateSeriesFillPaint, getAutoPopulateSeriesOutlinePaint, getAutoPopulateSeriesOutlineStroke, getAutoPopulateSeriesPaint, getAutoPopulateSeriesShape, getAutoPopulateSeriesStroke, getBaseCreateEntities, getBaseFillPaint, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseLegendShape, getBaseLegendTextFont, getBaseLegendTextPaint, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getCreateEntities, getDataBoundsIncludesVisibleSeriesOnly, getDefaultEntityRadius, getItemCreateEntity, getItemFillPaint, getItemLabelAnchorOffset, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendShape, getLegendTextFont, getLegendTextPaint, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, getTreatLegendShapeAsLine, hasListener, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupLegendShape, lookupLegendTextFont, lookupLegendTextPaint, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setBaseCreateEntities, setBaseCreateEntities, setBaseFillPaint, setBaseFillPaint, setBaseItemLabelFont, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseLegendShape, setBaseLegendTextFont, setBaseLegendTextPaint, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlinePaint, setBaseOutlineStroke, setBaseOutlineStroke, setBasePaint, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseShape, setBaseStroke, setBaseStroke, setCreateEntities, setCreateEntities, setDataBoundsIncludesVisibleSeriesOnly, setDefaultEntityRadius, setFillPaint, setFillPaint, setItemLabelAnchorOffset, setItemLabelFont, setItemLabelFont, setItemLabelPaint, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setLegendShape, setLegendTextFont, setLegendTextPaint, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlinePaint, setOutlineStroke, setOutlineStroke, setPaint, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setShape, setStroke, setStroke, setTreatLegendShapeAsLine
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
addChangeListener, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeChangeListener, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlineStroke, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseStroke, setItemLabelFont, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlineStroke, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setStroke
public StackedBarRenderer3D()
The defaults (no tool tip or URL generators) have been chosen to minimise the processing required to generate a default chart. If you require tool tips or URLs, then you can easily add the required generators.
public StackedBarRenderer3D(double xOffset, double yOffset)
xOffset
- the x-offset for the 3D effect.yOffset
- the y-offset for the 3D effect.public StackedBarRenderer3D(boolean renderAsPercentages)
renderAsPercentages
- a flag that controls whether the data values
are rendered as percentages.public StackedBarRenderer3D(double xOffset, double yOffset, boolean renderAsPercentages)
xOffset
- the x-offset for the 3D effect.yOffset
- the y-offset for the 3D effect.renderAsPercentages
- a flag that controls whether the data values
are rendered as percentages.public boolean getRenderAsPercentages()
true
if the renderer displays each item value as
a percentage (so that the stacked bars add to 100%), and
false
otherwise.public void setRenderAsPercentages(boolean asPercentages)
RendererChangeEvent
to all registered listeners.asPercentages
- the flag.public boolean getIgnoreZeroValues()
public void setIgnoreZeroValues(boolean ignore)
RendererChangeEvent
to all registered
listeners.ignore
- the new flag value.public Range findRangeBounds(CategoryDataset dataset)
findRangeBounds
in interface CategoryItemRenderer
findRangeBounds
in class AbstractCategoryItemRenderer
dataset
- the dataset (null
not permitted).null
if the dataset is empty).protected void calculateBarWidth(CategoryPlot plot, java.awt.geom.Rectangle2D dataArea, int rendererIndex, CategoryItemRendererState state)
calculateBarWidth
in class BarRenderer
plot
- the plot.dataArea
- the data area.rendererIndex
- the renderer index.state
- the renderer state.protected java.util.List createStackedValueList(CategoryDataset dataset, java.lang.Comparable category, double base, boolean asPercentages)
createStackedValueList(
CategoryDataset, Comparable, int[], double, boolean)
.dataset
- the dataset (null
not permitted).category
- the category key (null
not permitted).base
- the base value.asPercentages
- a flag that controls whether the values in the
list are converted to percentages of the total.protected java.util.List createStackedValueList(CategoryDataset dataset, java.lang.Comparable category, int[] includedRows, double base, boolean asPercentages)
dataset
- the dataset (null
not permitted).category
- the category key (null
not permitted).includedRows
- the included rows.base
- the base value.asPercentages
- a flag that controls whether the values in the
list are converted to percentages of the total.public void drawItem(java.awt.Graphics2D g2, CategoryItemRendererState state, java.awt.geom.Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset, int row, int column, int pass)
drawItem
in interface CategoryItemRenderer
drawItem
in class BarRenderer3D
g2
- the graphics device.state
- the renderer state.dataArea
- the plot area.plot
- the plot.domainAxis
- the domain (category) axis.rangeAxis
- the range (value) axis.dataset
- the data.row
- the row index (zero-based).column
- the column index (zero-based).pass
- the pass index.protected void drawStackHorizontal(java.util.List values, java.lang.Comparable category, java.awt.Graphics2D g2, CategoryItemRendererState state, java.awt.geom.Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset)
values
- the value list.category
- the category.g2
- the graphics device.state
- the state.dataArea
- the data area (adjusted for the 3D effect).plot
- the plot.domainAxis
- the domain axis.rangeAxis
- the range axis.dataset
- the dataset.protected void drawStackVertical(java.util.List values, java.lang.Comparable category, java.awt.Graphics2D g2, CategoryItemRendererState state, java.awt.geom.Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset)
values
- the value list.category
- the category.g2
- the graphics device.state
- the state.dataArea
- the data area (adjusted for the 3D effect).plot
- the plot.domainAxis
- the domain axis.rangeAxis
- the range axis.dataset
- the dataset.public boolean equals(java.lang.Object obj)
equals
in class BarRenderer3D
obj
- the object (null
permitted).public int hashCode()
hashCode
in class AbstractCategoryItemRenderer