## org.jfree.chart.axis
Class ModuloAxis

    java.lang.Object
      org.jfree.chart.axis.Axis
          org.jfree.chart.axis.ValueAxis
              org.jfree.chart.axis.NumberAxis
                  org.jfree.chart.axis.ModuloAxis

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, org.jfree.util.PublicCloneable

    public class ModuloAxis

extends NumberAxis

An axis that displays numerical values within a fixed range using a modulo calculation.

See Also:
  Serialized Form

Field Summary

Fields inherited from class org.jfree.chart.axis.NumberAxis
`DEFAULT_AUTO_RANGE_INCLUDES_ZERO, DEFAULT_AUTO_RANGE_STICKY_ZERO, DEFAULT_TICK_UNIT, DEFAULT_VERTICAL_TICK_LABELS`

Fields inherited from class org.jfree.chart.axis.ValueAxis
`DEFAULT_AUTO_RANGE, DEFAULT_AUTO_RANGE_MINIMUM_SIZE, DEFAULT_AUTO_TICK_UNIT_SELECTION, DEFAULT_INVERTED, DEFAULT_LOWER_BOUND, DEFAULT_LOWER_MARGIN, DEFAULT_RANGE, DEFAULT_UPPER_BOUND, DEFAULT_UPPER_MARGIN, MAXIMUM_TICK_COUNT`

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
`ModuloAxis(java.lang.String label, Range fixedRange)` Creates a new axis.

Method Summary
`protected void` `autoAdjustRange()` This method should calculate a range that will show all the data values.
`boolean` `equals(java.lang.Object obj)` Tests this axis for equality with an arbitrary object.
`double` `getDisplayEnd()` Returns the display end value.
`double` `getDisplayStart()` Returns the display start value.
`double` `java2DToValue(double java2DValue, java.awt.geom.Rectangle2D area, org.jfree.ui.RectangleEdge edge)` Translates a Java2D coordinate into a data value.
`double` `lengthToJava2D(double length, java.awt.geom.Rectangle2D area, org.jfree.ui.RectangleEdge edge)` Converts a length in data coordinates into the corresponding length in Java2D coordinates.
`void` `resizeRange(double percent)` Increases or decreases the axis range by the specified percentage about the central value and sends an `AxisChangeEvent` to all registered listeners.
`void` `resizeRange(double percent, double anchorValue)` Increases or decreases the axis range by the specified percentage about the specified anchor value and sends an `AxisChangeEvent` to all registered listeners.
`void` `setDisplayRange(double start, double end)` Sets the display range.
`double` `valueToJava2D(double value, java.awt.geom.Rectangle2D area, org.jfree.ui.RectangleEdge edge)` Translates a data value to a Java2D coordinate.

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

`calculateHighestVisibleTickValue, calculateLowestVisibleTickValue, calculateVisibleTickCount, clone, configure, createIntegerTickUnits, createIntegerTickUnits, createStandardTickUnits, createStandardTickUnits, draw, estimateMaximumTickLabelHeight, estimateMaximumTickLabelWidth, getAutoRangeIncludesZero, getAutoRangeStickyZero, getMarkerBand, getNumberFormatOverride, getRangeType, getTickUnit, hashCode, refreshTicks, refreshTicksHorizontal, refreshTicksVertical, selectAutoTickUnit, selectHorizontalAutoTickUnit, selectVerticalAutoTickUnit, setAutoRangeIncludesZero, setAutoRangeStickyZero, setMarkerBand, setNumberFormatOverride, setRangeType, setTickUnit, setTickUnit`

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

`calculateAnchorPoint, centerRange, drawAxisLine, drawTickMarksAndLabels, findMaximumTickLabelHeight, findMaximumTickLabelWidth, getAutoRangeMinimumSize, getAutoTickIndex, getDefaultAutoRange, getDownArrow, getFixedAutoRange, getLeftArrow, getLowerBound, getLowerMargin, getMinorTickCount, getRange, getRightArrow, getStandardTickUnits, getUpArrow, getUpperBound, getUpperMargin, isAutoRange, isAutoTickUnitSelection, isInverted, isNegativeArrowVisible, isPositiveArrowVisible, isVerticalTickLabels, pan, reserveSpace, resizeRange2, setAutoRange, setAutoRange, setAutoRangeMinimumSize, setAutoRangeMinimumSize, setAutoTickIndex, setAutoTickUnitSelection, setAutoTickUnitSelection, setDefaultAutoRange, setDownArrow, setFixedAutoRange, setInverted, setLeftArrow, setLowerBound, setLowerMargin, setMinorTickCount, setNegativeArrowVisible, setPositiveArrowVisible, setRange, setRange, setRange, setRangeAboutValue, setRangeWithMargins, setRangeWithMargins, setRangeWithMargins, setRightArrow, setStandardTickUnits, setUpArrow, setUpperBound, setUpperMargin, setVerticalTickLabels, zoomRange`

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

`addChangeListener, createAndAddEntity, drawLabel, fireChangeEvent, getAxisLinePaint, getAxisLineStroke, getFixedDimension, getLabel, getLabelAngle, getLabelEnclosure, getLabelFont, getLabelInsets, getLabelPaint, getMinorTickMarkInsideLength, getMinorTickMarkOutsideLength, getPlot, getTickLabelFont, getTickLabelInsets, getTickLabelPaint, getTickMarkInsideLength, getTickMarkOutsideLength, getTickMarkPaint, getTickMarkStroke, hasListener, isAxisLineVisible, isMinorTickMarksVisible, isTickLabelsVisible, isTickMarksVisible, isVisible, notifyListeners, removeChangeListener, setAxisLinePaint, setAxisLineStroke, setAxisLineVisible, setFixedDimension, setLabel, setLabelAngle, setLabelFont, setLabelInsets, setLabelInsets, setLabelPaint, setMinorTickMarkInsideLength, setMinorTickMarkOutsideLength, setMinorTickMarksVisible, 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

### ModuloAxis

    public ModuloAxis(java.lang.String label,
                      Range fixedRange)

  Creates a new axis.

  Parameters:
    `label` - the axis label (`null` permitted).
    `fixedRange` - the fixed range (`null` not permitted).

Method Detail

### getDisplayStart

    public double getDisplayStart()

  Returns the display start value.

  Returns:
    The display start value.

### getDisplayEnd

    public double getDisplayEnd()

  Returns the display end value.

  Returns:
    The display end value.

### setDisplayRange

    public void setDisplayRange(double start,
                                double end)

  Sets the display range. The values will be mapped to the fixed range if necessary.

  Parameters:
    `start` - the start value.
    `end` - the end value.

### autoAdjustRange

    protected void autoAdjustRange()

  This method should calculate a range that will show all the data values. For now, it just sets the axis range to the fixedRange.

  Overrides:
    `autoAdjustRange` in class `NumberAxis`

### valueToJava2D

    public double valueToJava2D(double value,
                                java.awt.geom.Rectangle2D area,
                                org.jfree.ui.RectangleEdge edge)

  Translates a data value to a Java2D coordinate.

  Overrides:
    `valueToJava2D` in class `NumberAxis`
  Parameters:
    `value` - the value.
    `area` - the area.
    `edge` - the edge.
  Returns:
    A Java2D coordinate.
  See Also:
    `NumberAxis.java2DToValue(double, Rectangle2D, RectangleEdge)`

### java2DToValue

    public double java2DToValue(double java2DValue,
                                java.awt.geom.Rectangle2D area,
                                org.jfree.ui.RectangleEdge edge)

  Translates a Java2D coordinate into a data value.

  Overrides:
    `java2DToValue` in class `NumberAxis`
  Parameters:
    `java2DValue` - the Java2D coordinate.
    `area` - the area.
    `edge` - the edge.
  Returns:
    The Java2D coordinate.
  See Also:
    `NumberAxis.valueToJava2D(double, Rectangle2D, RectangleEdge)`

### resizeRange

    public void resizeRange(double percent)

  Increases or decreases the axis range by the specified percentage about the central value and sends an `AxisChangeEvent` to all registered listeners.

  To double the length of the axis range, use 200% (2.0). To halve the length of the axis range, use 50% (0.5).

  Overrides:
    `resizeRange` in class `ValueAxis`
  Parameters:
    `percent` - the resize factor.
  See Also:
    `ValueAxis.resizeRange(double, double)`

### resizeRange

    public void resizeRange(double percent,
                            double anchorValue)

  Increases or decreases the axis range by the specified percentage about the specified anchor value and sends an `AxisChangeEvent` to all registered listeners.

  To double the length of the axis range, use 200% (2.0). To halve the length of the axis range, use 50% (0.5).

  Overrides:
    `resizeRange` in class `ValueAxis`
  Parameters:
    `percent` - the resize factor.
    `anchorValue` - the new central value after the resize.
  See Also:
    `ValueAxis.resizeRange(double)`

### lengthToJava2D

    public double lengthToJava2D(double length,
                                 java.awt.geom.Rectangle2D area,
                                 org.jfree.ui.RectangleEdge edge)

  Converts a length in data coordinates into the corresponding length in Java2D coordinates.

  Overrides:
    `lengthToJava2D` in class `ValueAxis`
  Parameters:
    `length` - the length.
    `area` - the plot area.
    `edge` - the edge along which the axis lies.
  Returns:
    The length in Java2D coordinates.

### equals

    public boolean equals(java.lang.Object obj)

  Tests this axis for equality with an arbitrary object.

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