Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
org.jfree.chart.renderer.AbstractRenderer
org.jfree.chart.renderer.category.AbstractCategoryItemRenderer
org.jfree.chart.renderer.category.BarRenderer
org.jfree.chart.renderer.category.StackedBarRenderer
public class StackedBarRenderer
extends BarRenderer
implements Cloneable, PublicCloneable, Serializable
CategoryPlot
class.
Field Summary |
Fields inherited from class org.jfree.chart.renderer.category.BarRenderer | |
BAR_OUTLINE_WIDTH_THRESHOLD , DEFAULT_ITEM_MARGIN |
Fields inherited from class org.jfree.chart.renderer.AbstractRenderer | |
DEFAULT_OUTLINE_PAINT , DEFAULT_OUTLINE_STROKE , DEFAULT_PAINT , DEFAULT_SHAPE , DEFAULT_STROKE , DEFAULT_VALUE_LABEL_FONT , DEFAULT_VALUE_LABEL_PAINT , ZERO |
Constructor Summary | |
| |
|
Method Summary | |
protected void |
|
void |
|
boolean |
|
Range |
|
int |
|
boolean |
|
void |
|
public StackedBarRenderer()
Creates a new renderer. By default, the renderer has no tool tip generator and no URL generator. These defaults 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 StackedBarRenderer(boolean renderAsPercentages)
Creates a new renderer.
- Parameters:
renderAsPercentages
- a flag that controls whether the data values are rendered as percentages.
protected void calculateBarWidth(CategoryPlot plot, Rectangle2D dataArea, int rendererIndex, CategoryItemRendererState state)
Calculates the bar width and stores it in the renderer state.
- Overrides:
- calculateBarWidth in interface BarRenderer
- Parameters:
plot
- the plot.dataArea
- the data area.rendererIndex
- the renderer index.state
- the renderer state.
public void drawItem(Graphics2D g2, CategoryItemRendererState state, Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset, int row, int column, int pass)
Draws a stacked bar for a specific item.
- Specified by:
- drawItem in interface CategoryItemRenderer
- Overrides:
- drawItem in interface BarRenderer
- Parameters:
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.
public boolean equals(Object obj)
Tests this renderer for equality with an arbitrary object.
- Overrides:
- equals in interface BarRenderer
- Parameters:
obj
- the object (null
permitted).
- Returns:
- A boolean.
public Range findRangeBounds(CategoryDataset dataset)
Returns the range of values the renderer requires to display all the items from the specified dataset.
- Specified by:
- findRangeBounds in interface CategoryItemRenderer
- Overrides:
- findRangeBounds in interface BarRenderer
- Parameters:
dataset
- the dataset (null
permitted).
- Returns:
- The range (or
null
if the dataset is empty).
public int getPassCount()
Returns the number of passes (2
) required by this renderer. The first pass is used to draw the bars, the second pass is used to draw the item labels (if visible).
- Specified by:
- getPassCount in interface CategoryItemRenderer
- Overrides:
- getPassCount in interface AbstractCategoryItemRenderer
- Returns:
- The number of passes required by the renderer.
public boolean getRenderAsPercentages()
Returnstrue
if the renderer displays each item value as a percentage (so that the stacked bars add to 100%), andfalse
otherwise.
- Returns:
- A boolean.
- See Also:
setRenderAsPercentages(boolean)
public 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 aRendererChangeEvent
to all registered listeners.
- Parameters:
asPercentages
- the flag.
- See Also:
getRenderAsPercentages()