Package org.jfree.chart.axis
Class Axis
java.lang.Object
org.jfree.chart.axis.Axis
- All Implemented Interfaces:
Serializable
,Cloneable
- Direct Known Subclasses:
CategoryAxis
,ValueAxis
public abstract class Axis extends Object implements Cloneable, Serializable
The base class for all axes in JFreeChart. Subclasses are divided into those
that display values (
ValueAxis
) and those that display categories
(CategoryAxis
).- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static Font
DEFAULT_AXIS_LABEL_FONT
The default axis label font.static Insets
DEFAULT_AXIS_LABEL_INSETS
The default axis label insets.static Paint
DEFAULT_AXIS_LABEL_PAINT
The default axis label paint.static Paint
DEFAULT_AXIS_LINE_PAINT
The default axis line paint.static Stroke
DEFAULT_AXIS_LINE_STROKE
The default axis line stroke.static boolean
DEFAULT_AXIS_VISIBLE
The default axis visibility.static Font
DEFAULT_TICK_LABEL_FONT
The default tick label font.static Insets
DEFAULT_TICK_LABEL_INSETS
The default tick label insets.static Paint
DEFAULT_TICK_LABEL_PAINT
The default tick label paint.static boolean
DEFAULT_TICK_LABELS_VISIBLE
The default tick labels visibility.static float
DEFAULT_TICK_MARK_INSIDE_LENGTH
The default tick mark inside length.static float
DEFAULT_TICK_MARK_OUTSIDE_LENGTH
The default tick mark outside length.static Paint
DEFAULT_TICK_MARK_PAINT
The default tick paint.static Stroke
DEFAULT_TICK_MARK_STROKE
The default tick stroke.static boolean
DEFAULT_TICK_MARKS_VISIBLE
The default tick marks visible. -
Method Summary
Modifier and Type Method Description void
addChangeListener(AxisChangeListener listener)
Registers an object for notification of changes to the axis.Object
clone()
Returns a clone of the axis.abstract void
configure()
Configures the axis to work with the current plot.abstract AxisState
draw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge, PlotRenderingInfo plotState)
Draws the axis on a Java 2D graphics device (such as the screen or a printer).boolean
equals(Object obj)
Tests this axis for equality with another object.Paint
getAxisLinePaint()
Returns the paint used to draw the axis line.Stroke
getAxisLineStroke()
Returns the stroke used to draw the axis line.double
getFixedDimension()
Returns the fixed dimension for the axis.String
getLabel()
Returns the label for the axis.double
getLabelAngle()
Returns the angle of the axis label.Font
getLabelFont()
Returns the font for the axis label.Insets
getLabelInsets()
Returns the insets for the label (that is, the amount of blank space that should be left around the label).Paint
getLabelPaint()
Returns the color/shade used to draw the axis label.Plot
getPlot()
Returns the plot that the axis is assigned to.Font
getTickLabelFont()
Returns the font used for the tick labels (if showing).Insets
getTickLabelInsets()
Returns the insets for the tick labels.Paint
getTickLabelPaint()
Returns the color/shade used for the tick labels.float
getTickMarkInsideLength()
Returns the inside length of the tick marks.float
getTickMarkOutsideLength()
Returns the outside length of the tick marks.Paint
getTickMarkPaint()
Returns the paint used to draw tick marks (if they are showing).Stroke
getTickMarkStroke()
Returns the pen/brush used to draw tick marks (if they are showing).boolean
isAxisLineVisible()
A flag that controls whether or not the axis line is drawn.boolean
isTickLabelsVisible()
Returns a flag indicating whether or not the tick labels are visible.boolean
isTickMarksVisible()
Returns the flag that indicates whether or not the tick marks are showing.boolean
isVisible()
Returnstrue
if the axis is visible, andfalse
otherwise.abstract List
refreshTicks(Graphics2D g2, AxisState state, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)
Calculates the positions of the ticks for the axis, storing the results in the tick list (ready for drawing).void
removeChangeListener(AxisChangeListener listener)
Deregisters an object for notification of changes to the axis.abstract AxisSpace
reserveSpace(Graphics2D g2, Plot plot, Rectangle2D plotArea, org.jfree.ui.RectangleEdge edge, AxisSpace space, boolean isOpositeAxisVisible)
Estimates the space (height or width) required to draw the axis.void
setAxisLinePaint(Paint paint)
Sets the paint used to draw the axis line and sends anAxisChangeEvent
to all registered listeners.void
setAxisLineStroke(Stroke stroke)
Sets the stroke used to draw the axis line and sends anAxisChangeEvent
to all registered listeners.void
setAxisLineVisible(boolean visible)
Sets a flag that controls whether or not the axis line is visible and sends anAxisChangeEvent
to all registered listeners.void
setFixedDimension(double dimension)
Sets the fixed dimension for the axis.void
setLabel(String label)
Sets the label for the axis and sends anAxisChangeEvent
to all registered listeners.void
setLabelAngle(double angle)
Sets the angle for the label and sends anAxisChangeEvent
to all registered listeners.void
setLabelFont(Font font)
Sets the font for the axis label and sends anAxisChangeEvent
to all registered listeners.void
setLabelInsets(Insets insets)
Sets the insets for the axis label, and sends anAxisChangeEvent
to all registered listeners.void
setLabelPaint(Paint paint)
Sets the paint used to draw the axis label and sends anAxisChangeEvent
to all registered listeners.void
setPlot(Plot plot)
Sets a reference to the plot that the axis is assigned to.void
setTickLabelFont(Font font)
Sets the font for the tick labels and sends anAxisChangeEvent
to all registered listeners.void
setTickLabelInsets(Insets insets)
Sets the insets for the tick labels and sends anAxisChangeEvent
to all registered listeners.void
setTickLabelPaint(Paint paint)
Sets the paint used to draw tick labels (if they are showing) and sends anAxisChangeEvent
to all registered listeners.void
setTickLabelsVisible(boolean flag)
Sets the flag that determines whether or not the tick labels are visible and sends anAxisChangeEvent
to all registered listeners.void
setTickMarkInsideLength(float length)
Sets the inside length of the tick marks and sends anAxisChangeEvent
to all registered listeners.void
setTickMarkOutsideLength(float length)
Sets the outside length of the tick marks and sends anAxisChangeEvent
to all registered listeners.void
setTickMarkPaint(Paint paint)
Sets the paint used to draw tick marks (if they are showing).void
setTickMarkStroke(Stroke stroke)
Sets the pen/brush used to draw tick marks (if they are showing) and sends anAxisChangeEvent
to all registered listeners.void
setTickMarksVisible(boolean flag)
Sets the flag that indicates whether or not the tick marks are showing and sends anAxisChangeEvent
to all registered listeners.void
setVisible(boolean flag)
Sets a flag that controls whether or not the axis is visible and sends anAxisChangeEvent
to all registered listeners.
-
Field Details
-
DEFAULT_AXIS_VISIBLE
public static final boolean DEFAULT_AXIS_VISIBLEThe default axis visibility.- See Also:
- Constant Field Values
-
DEFAULT_AXIS_LABEL_FONT
The default axis label font. -
DEFAULT_AXIS_LABEL_PAINT
The default axis label paint. -
DEFAULT_AXIS_LABEL_INSETS
The default axis label insets. -
DEFAULT_AXIS_LINE_PAINT
The default axis line paint. -
DEFAULT_AXIS_LINE_STROKE
The default axis line stroke. -
DEFAULT_TICK_LABELS_VISIBLE
public static final boolean DEFAULT_TICK_LABELS_VISIBLEThe default tick labels visibility.- See Also:
- Constant Field Values
-
DEFAULT_TICK_LABEL_FONT
The default tick label font. -
DEFAULT_TICK_LABEL_PAINT
The default tick label paint. -
DEFAULT_TICK_LABEL_INSETS
The default tick label insets. -
DEFAULT_TICK_MARKS_VISIBLE
public static final boolean DEFAULT_TICK_MARKS_VISIBLEThe default tick marks visible.- See Also:
- Constant Field Values
-
DEFAULT_TICK_MARK_STROKE
The default tick stroke. -
DEFAULT_TICK_MARK_PAINT
The default tick paint. -
DEFAULT_TICK_MARK_INSIDE_LENGTH
public static final float DEFAULT_TICK_MARK_INSIDE_LENGTHThe default tick mark inside length.- See Also:
- Constant Field Values
-
DEFAULT_TICK_MARK_OUTSIDE_LENGTH
public static final float DEFAULT_TICK_MARK_OUTSIDE_LENGTHThe default tick mark outside length.- See Also:
- Constant Field Values
-
-
Method Details
-
isVisible
public boolean isVisible()Returnstrue
if the axis is visible, andfalse
otherwise.- Returns:
- A boolean.
-
setVisible
public void setVisible(boolean flag)Sets a flag that controls whether or not the axis is visible and sends anAxisChangeEvent
to all registered listeners.- Parameters:
flag
- the flag.
-
getLabel
Returns the label for the axis.- Returns:
- The label for the axis (
null
possible).
-
setLabel
Sets the label for the axis and sends anAxisChangeEvent
to all registered listeners.- Parameters:
label
- the new label (null
permitted).
-
getLabelFont
Returns the font for the axis label.- Returns:
- The font.
-
setLabelFont
Sets the font for the axis label and sends anAxisChangeEvent
to all registered listeners.- Parameters:
font
- the font (null
not permitted).
-
getLabelPaint
Returns the color/shade used to draw the axis label.- Returns:
- The paint (never
null
).
-
setLabelPaint
Sets the paint used to draw the axis label and sends anAxisChangeEvent
to all registered listeners.- Parameters:
paint
- the paint (null
not permitted).
-
getLabelInsets
Returns the insets for the label (that is, the amount of blank space that should be left around the label).- Returns:
- The label insets (never
null
).
-
setLabelInsets
Sets the insets for the axis label, and sends anAxisChangeEvent
to all registered listeners.- Parameters:
insets
- the insets (null
not permitted).
-
getLabelAngle
public double getLabelAngle()Returns the angle of the axis label.- Returns:
- The angle (in radians).
-
setLabelAngle
public void setLabelAngle(double angle)Sets the angle for the label and sends anAxisChangeEvent
to all registered listeners.- Parameters:
angle
- the angle (in radians).
-
isAxisLineVisible
public boolean isAxisLineVisible()A flag that controls whether or not the axis line is drawn.- Returns:
- A boolean.
-
setAxisLineVisible
public void setAxisLineVisible(boolean visible)Sets a flag that controls whether or not the axis line is visible and sends anAxisChangeEvent
to all registered listeners.- Parameters:
visible
- the flag.
-
getAxisLinePaint
Returns the paint used to draw the axis line.- Returns:
- The paint (never
null
).
-
setAxisLinePaint
Sets the paint used to draw the axis line and sends anAxisChangeEvent
to all registered listeners.- Parameters:
paint
- the paint (null
not permitted).
-
getAxisLineStroke
Returns the stroke used to draw the axis line.- Returns:
- The stroke (never
null
).
-
setAxisLineStroke
Sets the stroke used to draw the axis line and sends anAxisChangeEvent
to all registered listeners.- Parameters:
stroke
- the stroke (null
not permitted).
-
isTickLabelsVisible
public boolean isTickLabelsVisible()Returns a flag indicating whether or not the tick labels are visible.- Returns:
- The flag.
-
setTickLabelsVisible
public void setTickLabelsVisible(boolean flag)Sets the flag that determines whether or not the tick labels are visible and sends anAxisChangeEvent
to all registered listeners.- Parameters:
flag
- the flag.
-
getTickLabelFont
Returns the font used for the tick labels (if showing).- Returns:
- The font (never
null
).
-
setTickLabelFont
Sets the font for the tick labels and sends anAxisChangeEvent
to all registered listeners.- Parameters:
font
- the font (null
not allowed).
-
getTickLabelPaint
Returns the color/shade used for the tick labels.- Returns:
- The paint used for the tick labels.
-
setTickLabelPaint
Sets the paint used to draw tick labels (if they are showing) and sends anAxisChangeEvent
to all registered listeners.- Parameters:
paint
- the paint (null
not permitted).
-
getTickLabelInsets
Returns the insets for the tick labels.- Returns:
- The insets (never
null
).
-
setTickLabelInsets
Sets the insets for the tick labels and sends anAxisChangeEvent
to all registered listeners.- Parameters:
insets
- the insets (null
not permitted).
-
isTickMarksVisible
public boolean isTickMarksVisible()Returns the flag that indicates whether or not the tick marks are showing.- Returns:
- the flag that indicates whether or not the tick marks are showing.
-
setTickMarksVisible
public void setTickMarksVisible(boolean flag)Sets the flag that indicates whether or not the tick marks are showing and sends anAxisChangeEvent
to all registered listeners.- Parameters:
flag
- the flag.
-
getTickMarkInsideLength
public float getTickMarkInsideLength()Returns the inside length of the tick marks.- Returns:
- The length.
-
setTickMarkInsideLength
public void setTickMarkInsideLength(float length)Sets the inside length of the tick marks and sends anAxisChangeEvent
to all registered listeners.- Parameters:
length
- the new length.
-
getTickMarkOutsideLength
public float getTickMarkOutsideLength()Returns the outside length of the tick marks.- Returns:
- The length.
-
setTickMarkOutsideLength
public void setTickMarkOutsideLength(float length)Sets the outside length of the tick marks and sends anAxisChangeEvent
to all registered listeners.- Parameters:
length
- the new length.
-
getTickMarkStroke
Returns the pen/brush used to draw tick marks (if they are showing).- Returns:
- The pen/brush used to draw tick marks.
-
setTickMarkStroke
Sets the pen/brush used to draw tick marks (if they are showing) and sends anAxisChangeEvent
to all registered listeners.- Parameters:
stroke
- the new pen/brush (null
not permitted).
-
getTickMarkPaint
Returns the paint used to draw tick marks (if they are showing).- Returns:
- The paint.
-
setTickMarkPaint
Sets the paint used to draw tick marks (if they are showing).Registered listeners are notified of a general change to the axis.
- Parameters:
paint
- the new paint (null not permitted).
-
getPlot
Returns the plot that the axis is assigned to.This method will return null if the axis is not currently assigned to a plot.
- Returns:
- The plot that the axis is assigned to.
-
setPlot
Sets a reference to the plot that the axis is assigned to.This method is used internally, you shouldn't need to call it yourself.
- Parameters:
plot
- the plot.
-
getFixedDimension
public double getFixedDimension()Returns the fixed dimension for the axis.- Returns:
- The fixed dimension.
-
setFixedDimension
public void setFixedDimension(double dimension)Sets the fixed dimension for the axis.This is used when combining more than one plot on a chart. In this case, there may be several axes that need to have the same height or width so that they are aligned. This method is used to fix a dimension for the axis (the context determines whether the dimension is horizontal or vertical).
- Parameters:
dimension
- the fixed dimension.
-
configure
public abstract void configure()Configures the axis to work with the current plot. Override this method to perform any special processing (such as auto-rescaling). -
reserveSpace
public abstract AxisSpace reserveSpace(Graphics2D g2, Plot plot, Rectangle2D plotArea, org.jfree.ui.RectangleEdge edge, AxisSpace space, boolean isOpositeAxisVisible)Estimates the space (height or width) required to draw the axis.- Parameters:
g2
- the graphics device.plot
- the plot that the axis belongs to.plotArea
- the area within which the plot (including axes) should be drawn.edge
- the axis location.space
- space already reserved.- Returns:
- The space required to draw the axis (including pre-reserved space).
-
draw
public abstract AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.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 (determines where to draw the axis).plotArea
- the area within which the axes and plot should be drawn.dataArea
- the area within which the data should be drawn.edge
- the axis location (null
not permitted).plotState
- collects information about the plot (null
permitted).- Returns:
- the axis state (never
null
).
-
refreshTicks
public abstract List refreshTicks(Graphics2D g2, AxisState state, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the ticks for the axis, storing the results in the tick list (ready for drawing).- Parameters:
g2
- the graphics device.state
- the axis state.plotArea
- the area within which the axes and plot should be drawn.dataArea
- the area inside the axes.edge
- the edge on which the axis is located.- Returns:
- The list of ticks.
-
addChangeListener
Registers an object for notification of changes to the axis.- Parameters:
listener
- the object that is being registered.
-
removeChangeListener
Deregisters an object for notification of changes to the axis.- Parameters:
listener
- the object to deregister.
-
clone
Returns a clone of the axis.- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- if some component of the axis does not support cloning.
-
equals
Tests this axis for equality with another object.
-