Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
org.jfree.chart.axis.Axis
org.jfree.chart.axis.CategoryAxis
Field Summary | |
static double |
|
static double |
|
Constructor Summary | |
| |
|
Method Summary | |
void |
|
protected double |
|
protected double |
|
protected double |
|
protected double |
|
void |
|
Object |
|
void |
|
protected TextBlock |
|
AxisState |
|
protected AxisState |
|
protected AxisState |
|
boolean |
|
double |
|
double |
|
int |
|
CategoryLabelPositions |
|
String |
|
double |
|
double |
|
double |
|
double |
|
int |
|
float |
|
Font |
|
Paint |
|
double |
|
int |
|
List |
|
void |
|
AxisSpace |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
public static final double DEFAULT_AXIS_MARGIN
The default margin for the axis (used for both lower and upper margins).
- Field Value:
- 0.0
public static final double DEFAULT_CATEGORY_MARGIN
The default margin between categories (a percentage of the overall axis length).
- Field Value:
- 0.0
public CategoryAxis(String label)
Constructs a category axis, using default values where necessary.
- Parameters:
label
- the axis label (null
permitted).
public void addCategoryLabelToolTip(Comparable category, String tooltip)
Adds a tooltip to the specified category and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
category
- the category (null
not permitted).
tooltip
- the tooltip text (null
permitted).
protected double calculateCategoryGapSize(int categoryCount, Rectangle2D area, RectangleEdge edge)
Calculates the size (width or height, depending on the location of the axis) of a category gap.
- Parameters:
categoryCount
- the number of categories.area
- the area within which the categories will be drawn.edge
- the axis location.
- Returns:
- The category gap width.
protected double calculateCategorySize(int categoryCount, Rectangle2D area, RectangleEdge edge)
Calculates the size (width or height, depending on the location of the axis) of a category.
- Parameters:
categoryCount
- the number of categories.area
- the area within which the categories will be drawn.edge
- the axis location.
- Returns:
- The category size.
protected double calculateTextBlockHeight(TextBlock block, CategoryLabelPosition position, Graphics2D g2)
A utility method for determining the height of a text block.
- Parameters:
block
- the text block.position
- the label position.g2
- the graphics device.
- Returns:
- The height.
protected double calculateTextBlockWidth(TextBlock block, CategoryLabelPosition position, Graphics2D g2)
A utility method for determining the width of a text block.
- Parameters:
block
- the text block.position
- the position.g2
- the graphics device.
- Returns:
- The width.
public void clearCategoryLabelToolTips()
Clears the category label tooltips and sends anAxisChangeEvent
to all registered listeners.
public Object clone() throws CloneNotSupportedException
Creates a clone of the axis.
- Returns:
- A clone.
protected TextBlock createLabel(Comparable category, float width, RectangleEdge edge, Graphics2D g2)
Creates a label.
- Parameters:
category
- the category.width
- the available width.edge
- the edge on which the axis appears.g2
- the graphics device.
- Returns:
- A label.
public AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge, PlotRenderingInfo plotState)
Draws the axis on a Java 2D graphics device (such as the screen or a printer).
- Parameters:
g2
- the graphics device (null
not permitted).cursor
- the cursor location.plotArea
- the area within which the axis should be drawn (null
not permitted).dataArea
- the area within which the plot is being drawn (null
not permitted).edge
- the location of the axis (null
not permitted).plotState
- collects information about the plot (null
permitted).
- Returns:
- The axis state (never
null
).
protected AxisState drawCategoryLabels(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge, AxisState state, PlotRenderingInfo plotState)
Draws the category labels and returns the updated axis state.
- Parameters:
g2
- the graphics device (null
not permitted).plotArea
- the plot area (null
not permitted).dataArea
- the area inside the axes (null
not permitted).edge
- the axis location (null
not permitted).state
- the axis state (null
not permitted).plotState
- collects information about the plot (null
permitted).
- Returns:
- The updated axis state (never
null
).
protected AxisState drawCategoryLabels(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge, AxisState state, PlotRenderingInfo plotState)
Deprecated. Use
drawCategoryLabels(Graphics2D,Rectangle2D,Rectangle2D,RectangleEdge,AxisState,PlotRenderingInfo)
.Draws the category labels and returns the updated axis state.
- Parameters:
g2
- the graphics device (null
not permitted).dataArea
- the area inside the axes (null
not permitted).edge
- the axis location (null
not permitted).state
- the axis state (null
not permitted).plotState
- collects information about the plot (null
permitted).
- Returns:
- The updated axis state (never
null
).
public boolean equals(Object obj)
Tests this axis for equality with an arbitrary object.
- Parameters:
obj
- the object (null
permitted).
- Returns:
- A boolean.
public double getCategoryEnd(int category, int categoryCount, Rectangle2D area, RectangleEdge edge)
Returns the end coordinate for the specified category.
- Parameters:
category
- the category.categoryCount
- the number of categories.area
- the data area.edge
- the axis location.
- Returns:
- The coordinate.
public double getCategoryJava2DCoordinate(CategoryAnchor anchor, int category, int categoryCount, Rectangle2D area, RectangleEdge edge)
Returns the Java 2D coordinate for a category.
- Parameters:
anchor
- the anchor point.category
- the category index.categoryCount
- the category count.area
- the data area.edge
- the location of the axis.
- Returns:
- The coordinate.
public int getCategoryLabelPositionOffset()
Returns the offset between the axis and the category labels (before label positioning is taken into account).
- Returns:
- The offset (in Java2D units).
public CategoryLabelPositions getCategoryLabelPositions()
Returns the category label position specification (this contains label positioning info for all four possible axis locations).
- Returns:
- The positions (never
null
).
public String getCategoryLabelToolTip(Comparable category)
Returns the tool tip text for the label belonging to the specified category.
- Parameters:
category
- the category (null
not permitted).
- Returns:
- The tool tip text (possibly
null
).
public double getCategoryMiddle(int category, int categoryCount, Rectangle2D area, RectangleEdge edge)
Returns the middle coordinate for the specified category.
- Parameters:
category
- the category.categoryCount
- the number of categories.area
- the data area.edge
- the axis location.
- Returns:
- The coordinate.
public double getCategoryStart(int category, int categoryCount, Rectangle2D area, RectangleEdge edge)
Returns the starting coordinate for the specified category.
- Parameters:
category
- the category.categoryCount
- the number of categories.area
- the data area.edge
- the axis location.
- Returns:
- The coordinate.
public double getLowerMargin()
Returns the lower margin for the axis.
- Returns:
- The margin.
public int getMaximumCategoryLabelLines()
Returns the maximum number of lines to use for each category label.
- Returns:
- The maximum number of lines.
public float getMaximumCategoryLabelWidthRatio()
Returns the category label width ratio.
- Returns:
- The ratio.
public Font getTickLabelFont(Comparable category)
Returns the font for the tick label for the given category.
- Parameters:
category
- the category (null
not permitted).
- Returns:
- The font (never
null
).
public Paint getTickLabelPaint(Comparable category)
Returns the paint for the tick label for the given category.
- Parameters:
category
- the category (null
not permitted).
- Returns:
- The paint (never
null
).
public double getUpperMargin()
Returns the upper margin for the axis.
- Returns:
- The margin.
public List refreshTicks(Graphics2D g2, AxisState state, Rectangle2D dataArea, RectangleEdge edge)
Creates a temporary list of ticks that can be used when drawing the axis.
- Overrides:
- refreshTicks in interface Axis
- Parameters:
g2
- the graphics device (used to get font measurements).state
- the axis state.dataArea
- the area inside the axes.edge
- the location of the axis.
- Returns:
- A list of ticks.
public void removeCategoryLabelToolTip(Comparable category)
Removes the tooltip for the specified category and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
category
- the category (null
not permitted).
public AxisSpace reserveSpace(Graphics2D g2, Plot plot, Rectangle2D plotArea, RectangleEdge edge, AxisSpace space)
Estimates the space required for the axis, given a specific drawing area.
- Overrides:
- reserveSpace in interface Axis
- Parameters:
g2
- the graphics device (used to obtain font information).plot
- the plot that the axis belongs to.plotArea
- the area within which the axis should be drawn.edge
- the axis location (top or bottom).space
- the space already reserved.
- Returns:
- The space required to draw the axis.
public void setCategoryLabelPositionOffset(int offset)
Sets the offset between the axis and the category labels (before label positioning is taken into account).
- Parameters:
offset
- the offset (in Java2D units).
public void setCategoryLabelPositions(CategoryLabelPositions positions)
Sets the category label position specification for the axis and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
positions
- the positions (null
not permitted).
public void setCategoryMargin(double margin)
Sets the category margin and sends anAxisChangeEvent
to all registered listeners. The overall category margin is distributed over N-1 gaps, where N is the number of categories on the axis.
- Parameters:
margin
- the margin as a percentage of the axis length (for example, 0.05 is five percent).
public void setLowerMargin(double margin)
Sets the lower margin for the axis and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
margin
- the margin as a percentage of the axis length (for example, 0.05 is five percent).
public void setMaximumCategoryLabelLines(int lines)
Sets the maximum number of lines to use for each category label and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
lines
- the maximum number of lines.
public void setMaximumCategoryLabelWidthRatio(float ratio)
Sets the maximum category label width ratio and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
ratio
- the ratio.
public void setTickLabelFont(Comparable category, Font font)
Sets the font for the tick label for the specified category and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
category
- the category (null
not permitted).font
- the font (null
permitted).
public void setTickLabelPaint(Comparable category, Paint paint)
Sets the paint for the tick label for the specified category and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
category
- the category (null
not permitted).paint
- the paint (null
permitted).
public void setUpperMargin(double margin)
Sets the upper margin for the axis and sends anAxisChangeEvent
to all registered listeners.
- Parameters:
margin
- the margin as a percentage of the axis length (for example, 0.05 is five percent).