## org.jfree.chart.axis
Class ExtendedCategoryAxis

    java.lang.Object
      org.jfree.chart.axis.Axis
          org.jfree.chart.axis.CategoryAxis
              org.jfree.chart.axis.ExtendedCategoryAxis

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable

    public class ExtendedCategoryAxis

extends CategoryAxis

An extended version of the `CategoryAxis` class that supports sublabels on the axis.

See Also:
  Serialized Form

Field Summary

Fields inherited from class org.jfree.chart.axis.CategoryAxis
`DEFAULT_AXIS_MARGIN, DEFAULT_CATEGORY_MARGIN`

Fields inherited from class org.jfree.chart.axis.Axis

`DEFAULT_AXIS_LABEL_FONT, DEFAULT_AXIS_LABEL_INSETS, DEFAULT_AXIS_LABEL_PAINT, DEFAULT_AXIS_LINE_PAINT, DEFAULT_AXIS_LINE_STROKE, DEFAULT_AXIS_VISIBLE, DEFAULT_TICK_LABEL_FONT, DEFAULT_TICK_LABEL_INSETS, DEFAULT_TICK_LABEL_PAINT, DEFAULT_TICK_LABELS_VISIBLE, DEFAULT_TICK_MARK_INSIDE_LENGTH, DEFAULT_TICK_MARK_OUTSIDE_LENGTH, DEFAULT_TICK_MARK_PAINT, DEFAULT_TICK_MARK_STROKE, DEFAULT_TICK_MARKS_VISIBLE`

Constructor Summary
`ExtendedCategoryAxis(java.lang.String label)` Creates a new axis.

Method Summary
`void` `addSubLabel(java.lang.Comparable category, java.lang.String label)` Adds a sublabel for a category.
`java.lang.Object` `clone()` Returns a clone of this axis.
`protected org.jfree.text.TextBlock` `createLabel(java.lang.Comparable category, float width, org.jfree.ui.RectangleEdge edge, java.awt.Graphics2D g2)` Overrides the default behaviour by adding the sublabel to the text block that is used for the category label.
`boolean` `equals(java.lang.Object obj)` Tests this axis for equality with an arbitrary object.
`java.awt.Font` `getSubLabelFont()` Returns the font for the sublabels.
`java.awt.Paint` `getSubLabelPaint()` Returns the paint for the sublabels.
`void` `setSubLabelFont(java.awt.Font font)` Sets the font for the sublabels and sends an `AxisChangeEvent` to all registered listeners.
`void` `setSubLabelPaint(java.awt.Paint paint)` Sets the paint for the sublabels and sends an `AxisChangeEvent` to all registered listeners.

Methods inherited from class org.jfree.chart.axis.CategoryAxis

`addCategoryLabelToolTip, calculateCategoryGapSize, calculateCategorySize, calculateTextBlockHeight, calculateTextBlockWidth, clearCategoryLabelToolTips, configure, draw, drawCategoryLabels, drawCategoryLabels, getCategoryEnd, getCategoryJava2DCoordinate, getCategoryLabelPositionOffset, getCategoryLabelPositions, getCategoryLabelToolTip, getCategoryMargin, getCategoryMiddle, getCategorySeriesMiddle, getCategoryStart, getLowerMargin, getMaximumCategoryLabelLines, getMaximumCategoryLabelWidthRatio, getTickLabelFont, getTickLabelPaint, getUpperMargin, hashCode, refreshTicks, removeCategoryLabelToolTip, reserveSpace, setCategoryLabelPositionOffset, setCategoryLabelPositions, setCategoryMargin, setLowerMargin, setMaximumCategoryLabelLines, setMaximumCategoryLabelWidthRatio, setTickLabelFont, setTickLabelPaint, setUpperMargin`

Methods inherited from class org.jfree.chart.axis.Axis

`addChangeListener, drawAxisLine, drawLabel, getAxisLinePaint, getAxisLineStroke, getFixedDimension, getLabel, getLabelAngle, getLabelEnclosure, getLabelFont, getLabelInsets, getLabelPaint, getPlot, getTickLabelFont, getTickLabelInsets, getTickLabelPaint, getTickMarkInsideLength, getTickMarkOutsideLength, getTickMarkPaint, getTickMarkStroke, hasListener, isAxisLineVisible, isTickLabelsVisible, isTickMarksVisible, isVisible, notifyListeners, removeChangeListener, setAxisLinePaint, setAxisLineStroke, setAxisLineVisible, setFixedDimension, setLabel, setLabelAngle, setLabelFont, setLabelInsets, setLabelInsets, setLabelPaint, setPlot, setTickLabelFont, setTickLabelInsets, setTickLabelPaint, setTickLabelsVisible, setTickMarkInsideLength, setTickMarkOutsideLength, setTickMarkPaint, setTickMarkStroke, setTickMarksVisible, setVisible`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ExtendedCategoryAxis

    public ExtendedCategoryAxis(java.lang.String label)

  Creates a new axis.

  Parameters:
    `label` - the axis label.

Method Detail

### getSubLabelFont

    public java.awt.Font getSubLabelFont()

  Returns the font for the sublabels.

  Returns:
    The font (never `null`).
  See Also:
    `setSubLabelFont(Font)`

### setSubLabelFont

    public void setSubLabelFont(java.awt.Font font)

  Sets the font for the sublabels and sends an `AxisChangeEvent` to all registered listeners.

  Parameters:
    `font` - the font (`null` not permitted).
  See Also:
    `getSubLabelFont()`

### getSubLabelPaint

    public java.awt.Paint getSubLabelPaint()

  Returns the paint for the sublabels.

  Returns:
    The paint (never `null`).
  See Also:
    `setSubLabelPaint(Paint)`

### setSubLabelPaint

    public void setSubLabelPaint(java.awt.Paint paint)

  Sets the paint for the sublabels and sends an `AxisChangeEvent` to all registered listeners.

  Parameters:
    `paint` - the paint (`null` not permitted).
  See Also:
    `getSubLabelPaint()`

### addSubLabel

    public void addSubLabel(java.lang.Comparable category,
                            java.lang.String label)

  Adds a sublabel for a category.

  Parameters:
    `category` - the category.
    `label` - the label.

### createLabel

    protected org.jfree.text.TextBlock createLabel(java.lang.Comparable category,
                                                   float width,
                                                   org.jfree.ui.RectangleEdge edge,
                                                   java.awt.Graphics2D g2)

  Overrides the default behaviour by adding the sublabel to the text block that is used for the category label.

  Overrides:
    `createLabel` in class `CategoryAxis`
  Parameters:
    `category` - the category.
    `width` - the width (not used yet).
    `edge` - the location of the axis.
    `g2` - the graphics device.
  Returns:
    A label.

### equals

    public boolean equals(java.lang.Object obj)

  Tests this axis for equality with an arbitrary object.

  Overrides:
    `equals` in class `CategoryAxis`
  Parameters:
    `obj` - the object (`null` permitted).
  Returns:
    A boolean.

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Returns a clone of this axis.

  Overrides:
    `clone` in class `CategoryAxis`
  Returns:
    A clone.
  Throws:
    `java.lang.CloneNotSupportedException` - if there is a problem cloning.