Class Axis

    • Field Detail

      • DEFAULT_AXIS_VISIBLE

        public static final boolean DEFAULT_AXIS_VISIBLE
        The default axis visibility.
        See Also:
        Constant Field Values
      • DEFAULT_AXIS_LABEL_FONT

        public static final Font DEFAULT_AXIS_LABEL_FONT
        The default axis label font.
      • DEFAULT_AXIS_LABEL_PAINT

        public static final Paint DEFAULT_AXIS_LABEL_PAINT
        The default axis label paint.
      • DEFAULT_AXIS_LABEL_INSETS

        public static final org.jfree.ui.RectangleInsets DEFAULT_AXIS_LABEL_INSETS
        The default axis label insets.
      • DEFAULT_AXIS_LINE_PAINT

        public static final Paint DEFAULT_AXIS_LINE_PAINT
        The default axis line paint.
      • DEFAULT_AXIS_LINE_STROKE

        public static final Stroke DEFAULT_AXIS_LINE_STROKE
        The default axis line stroke.
      • DEFAULT_TICK_LABELS_VISIBLE

        public static final boolean DEFAULT_TICK_LABELS_VISIBLE
        The default tick labels visibility.
        See Also:
        Constant Field Values
      • DEFAULT_TICK_LABEL_FONT

        public static final Font DEFAULT_TICK_LABEL_FONT
        The default tick label font.
      • DEFAULT_TICK_LABEL_PAINT

        public static final Paint DEFAULT_TICK_LABEL_PAINT
        The default tick label paint.
      • DEFAULT_TICK_LABEL_INSETS

        public static final org.jfree.ui.RectangleInsets DEFAULT_TICK_LABEL_INSETS
        The default tick label insets.
      • DEFAULT_TICK_MARKS_VISIBLE

        public static final boolean DEFAULT_TICK_MARKS_VISIBLE
        The default tick marks visible.
        See Also:
        Constant Field Values
      • DEFAULT_TICK_MARK_STROKE

        public static final Stroke DEFAULT_TICK_MARK_STROKE
        The default tick stroke.
      • DEFAULT_TICK_MARK_PAINT

        public static final Paint DEFAULT_TICK_MARK_PAINT
        The default tick paint.
      • DEFAULT_TICK_MARK_INSIDE_LENGTH

        public static final float DEFAULT_TICK_MARK_INSIDE_LENGTH
        The default tick mark inside length.
        See Also:
        Constant Field Values
      • DEFAULT_TICK_MARK_OUTSIDE_LENGTH

        public static final float DEFAULT_TICK_MARK_OUTSIDE_LENGTH
        The default tick mark outside length.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Axis

        protected Axis​(String label)
        Constructs an axis, using default values where necessary.
        Parameters:
        label - the axis label (null permitted).
    • Method Detail

      • isVisible

        public boolean isVisible()
        Returns true if the axis is visible, and false otherwise.
        Returns:
        A boolean.
        See Also:
        setVisible(boolean)
      • setVisible

        public void setVisible​(boolean flag)
        Sets a flag that controls whether or not the axis is visible and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        flag - the flag.
        See Also:
        isVisible()
      • getAttributedLabel

        public AttributedString getAttributedLabel()
        Returns the attributed label (the returned value is a copy, so modifying it will not impact the state of the axis). The default value is null.
        Returns:
        The attributed label (possibly null).
        Since:
        1.0.16
      • setAttributedLabel

        public void setAttributedLabel​(String label)
        Sets the attributed label for the axis and sends an AxisChangeEvent to all registered listeners. This is a convenience method that converts the string into an AttributedString using the current font attributes.
        Parameters:
        label - the label (null permitted).
        Since:
        1.0.16
      • setAttributedLabel

        public void setAttributedLabel​(AttributedString label)
        Sets the attributed label for the axis and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        label - the label (null permitted).
        Since:
        1.0.16
      • createAttributedLabel

        public AttributedString createAttributedLabel​(String label)
        Creates and returns an AttributedString with the specified text and the labelFont and labelPaint applied as attributes.
        Parameters:
        label - the label (null permitted).
        Returns:
        An attributed string or null.
        Since:
        1.0.16
      • getLabelFont

        public Font getLabelFont()
        Returns the font for the axis label.
        Returns:
        The font (never null).
        See Also:
        setLabelFont(Font)
      • setLabelFont

        public void setLabelFont​(Font font)
        Sets the font for the axis label and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        font - the font (null not permitted).
        See Also:
        getLabelFont()
      • getLabelPaint

        public Paint getLabelPaint()
        Returns the color/shade used to draw the axis label.
        Returns:
        The paint (never null).
        See Also:
        setLabelPaint(Paint)
      • setLabelPaint

        public void setLabelPaint​(Paint paint)
        Sets the paint used to draw the axis label and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getLabelPaint()
      • getLabelInsets

        public org.jfree.ui.RectangleInsets 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).
        See Also:
        setLabelInsets(RectangleInsets)
      • setLabelInsets

        public void setLabelInsets​(org.jfree.ui.RectangleInsets insets)
        Sets the insets for the axis label, and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        insets - the insets (null not permitted).
        See Also:
        getLabelInsets()
      • setLabelInsets

        public void setLabelInsets​(org.jfree.ui.RectangleInsets insets,
                                   boolean notify)
        Sets the insets for the axis label, and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        insets - the insets (null not permitted).
        notify - notify listeners?
        Since:
        1.0.10
      • getLabelAngle

        public double getLabelAngle()
        Returns the angle of the axis label.
        Returns:
        The angle (in radians).
        See Also:
        setLabelAngle(double)
      • setLabelAngle

        public void setLabelAngle​(double angle)
        Sets the angle for the label and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        angle - the angle (in radians).
        See Also:
        getLabelAngle()
      • getLabelLocation

        public AxisLabelLocation getLabelLocation()
        Returns the location of the axis label. The default is AxisLabelLocation.MIDDLE.
        Returns:
        The location of the axis label (never null).
        Since:
        1.0.16
      • setLabelLocation

        public void setLabelLocation​(AxisLabelLocation location)
        Sets the axis label location and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        location - the new location (null not permitted).
        Since:
        1.0.16
      • getAxisLinePaint

        public Paint getAxisLinePaint()
        Returns the paint used to draw the axis line.
        Returns:
        The paint (never null).
        See Also:
        setAxisLinePaint(Paint)
      • setAxisLinePaint

        public void setAxisLinePaint​(Paint paint)
        Sets the paint used to draw the axis line and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getAxisLinePaint()
      • getAxisLineStroke

        public Stroke getAxisLineStroke()
        Returns the stroke used to draw the axis line.
        Returns:
        The stroke (never null).
        See Also:
        setAxisLineStroke(Stroke)
      • setAxisLineStroke

        public void setAxisLineStroke​(Stroke stroke)
        Sets the stroke used to draw the axis line and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        stroke - the stroke (null not permitted).
        See Also:
        getAxisLineStroke()
      • isMinorTickMarksVisible

        public boolean isMinorTickMarksVisible()
        Returns the flag that indicates whether or not the minor tick marks are showing.
        Returns:
        The flag that indicates whether or not the minor tick marks are showing.
        Since:
        1.0.12
        See Also:
        setMinorTickMarksVisible(boolean)
      • setMinorTickMarksVisible

        public void setMinorTickMarksVisible​(boolean flag)
        Sets the flag that indicates whether or not the minor tick marks are showing and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        flag - the flag.
        Since:
        1.0.12
        See Also:
        isMinorTickMarksVisible()
      • getTickLabelFont

        public Font getTickLabelFont()
        Returns the font used for the tick labels (if showing).
        Returns:
        The font (never null).
        See Also:
        setTickLabelFont(Font)
      • setTickLabelFont

        public void setTickLabelFont​(Font font)
        Sets the font for the tick labels and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        font - the font (null not allowed).
        See Also:
        getTickLabelFont()
      • getTickLabelPaint

        public Paint getTickLabelPaint()
        Returns the color/shade used for the tick labels.
        Returns:
        The paint used for the tick labels.
        See Also:
        setTickLabelPaint(Paint)
      • setTickLabelPaint

        public void setTickLabelPaint​(Paint paint)
        Sets the paint used to draw tick labels (if they are showing) and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getTickLabelPaint()
      • getTickLabelInsets

        public org.jfree.ui.RectangleInsets getTickLabelInsets()
        Returns the insets for the tick labels.
        Returns:
        The insets (never null).
        See Also:
        setTickLabelInsets(RectangleInsets)
      • setTickLabelInsets

        public void setTickLabelInsets​(org.jfree.ui.RectangleInsets insets)
        Sets the insets for the tick labels and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        insets - the insets (null not permitted).
        See Also:
        getTickLabelInsets()
      • 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.
        See Also:
        setTickMarksVisible(boolean)
      • setTickMarksVisible

        public void setTickMarksVisible​(boolean flag)
        Sets the flag that indicates whether or not the tick marks are showing and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        flag - the flag.
        See Also:
        isTickMarksVisible()
      • setTickMarkInsideLength

        public void setTickMarkInsideLength​(float length)
        Sets the inside length of the tick marks and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        length - the new length.
        See Also:
        getTickMarkInsideLength()
      • setTickMarkOutsideLength

        public void setTickMarkOutsideLength​(float length)
        Sets the outside length of the tick marks and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        length - the new length.
        See Also:
        getTickMarkInsideLength()
      • getTickMarkStroke

        public Stroke getTickMarkStroke()
        Returns the stroke used to draw tick marks.
        Returns:
        The stroke (never null).
        See Also:
        setTickMarkStroke(Stroke)
      • setTickMarkStroke

        public void setTickMarkStroke​(Stroke stroke)
        Sets the stroke used to draw tick marks and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        stroke - the stroke (null not permitted).
        See Also:
        getTickMarkStroke()
      • getTickMarkPaint

        public Paint getTickMarkPaint()
        Returns the paint used to draw tick marks (if they are showing).
        Returns:
        The paint (never null).
        See Also:
        setTickMarkPaint(Paint)
      • setTickMarkPaint

        public void setTickMarkPaint​(Paint paint)
        Sets the paint used to draw tick marks and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null not permitted).
        See Also:
        getTickMarkPaint()
      • setMinorTickMarkInsideLength

        public void setMinorTickMarkInsideLength​(float length)
        Sets the inside length of the minor tick marks and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        length - the new length.
        Since:
        1.0.12
        See Also:
        getMinorTickMarkInsideLength()
      • setMinorTickMarkOutsideLength

        public void setMinorTickMarkOutsideLength​(float length)
        Sets the outside length of the minor tick marks and sends an AxisChangeEvent to all registered listeners.
        Parameters:
        length - the new length.
        Since:
        1.0.12
        See Also:
        getMinorTickMarkInsideLength()
      • getPlot

        public Plot 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 (possibly null).
        See Also:
        setPlot(Plot)
      • setPlot

        public void setPlot​(Plot plot)
        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.
        See Also:
        getPlot()
      • getFixedDimension

        public double getFixedDimension()
        Returns the fixed dimension for the axis.
        Returns:
        The fixed dimension.
        See Also:
        setFixedDimension(double)
      • 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.
        See Also:
        getFixedDimension()
      • 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)
        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 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.
        dataArea - the area inside the axes.
        edge - the edge on which the axis is located.
        Returns:
        The list of ticks.
      • createAndAddEntity

        protected void createAndAddEntity​(double cursor,
                                          AxisState state,
                                          Rectangle2D dataArea,
                                          org.jfree.ui.RectangleEdge edge,
                                          PlotRenderingInfo plotState)
        Created an entity for the axis.
        Parameters:
        cursor - the initial cursor value.
        state - the axis state after completion of the drawing with a possibly updated cursor position.
        dataArea - the data area.
        edge - the edge.
        plotState - the PlotRenderingInfo from which a reference to the entity collection can be obtained.
        Since:
        1.0.13
      • hasListener

        public boolean hasListener​(EventListener listener)
        Returns true if the specified object is registered with the dataset as a listener. Most applications won't need to call this method, it exists mainly for use by unit testing code.
        Parameters:
        listener - the listener.
        Returns:
        A boolean.
      • notifyListeners

        protected void notifyListeners​(AxisChangeEvent event)
        Notifies all registered listeners that the axis has changed. The AxisChangeEvent provides information about the change.
        Parameters:
        event - information about the change to the axis.
      • fireChangeEvent

        protected void fireChangeEvent()
        Sends an AxisChangeEvent to all registered listeners.
        Since:
        1.0.12
      • getLabelEnclosure

        protected Rectangle2D getLabelEnclosure​(Graphics2D g2,
                                                org.jfree.ui.RectangleEdge edge)
        Returns a rectangle that encloses the axis label. This is typically used for layout purposes (it gives the maximum dimensions of the label).
        Parameters:
        g2 - the graphics device.
        edge - the edge of the plot area along which the axis is measuring.
        Returns:
        The enclosing rectangle.
      • labelAnchorH

        protected org.jfree.ui.TextAnchor labelAnchorH​(AxisLabelLocation location)
      • labelAnchorV

        protected org.jfree.ui.TextAnchor labelAnchorV​(AxisLabelLocation location)
      • drawLabel

        protected AxisState drawLabel​(String label,
                                      Graphics2D g2,
                                      Rectangle2D plotArea,
                                      Rectangle2D dataArea,
                                      org.jfree.ui.RectangleEdge edge,
                                      AxisState state)
        Draws the axis label.
        Parameters:
        label - the label text.
        g2 - the graphics device.
        plotArea - the plot area.
        dataArea - the area inside the axes.
        edge - the location of the axis.
        state - the axis state (null not permitted).
        Returns:
        Information about the axis.
      • drawAttributedLabel

        protected AxisState drawAttributedLabel​(AttributedString label,
                                                Graphics2D g2,
                                                Rectangle2D plotArea,
                                                Rectangle2D dataArea,
                                                org.jfree.ui.RectangleEdge edge,
                                                AxisState state)
        Draws the axis label.
        Parameters:
        label - the label text.
        g2 - the graphics device.
        plotArea - the plot area.
        dataArea - the area inside the axes.
        edge - the location of the axis.
        state - the axis state (null not permitted).
        Returns:
        Information about the axis.
        Since:
        1.0.16
      • drawAxisLine

        protected void drawAxisLine​(Graphics2D g2,
                                    double cursor,
                                    Rectangle2D dataArea,
                                    org.jfree.ui.RectangleEdge edge)
        Draws an axis line at the current cursor position and edge.
        Parameters:
        g2 - the graphics device.
        cursor - the cursor position.
        dataArea - the data area.
        edge - the edge.
      • equals

        public boolean equals​(Object obj)
        Tests this axis for equality with another object.
        Overrides:
        equals in class Object
        Parameters:
        obj - the object (null permitted).
        Returns:
        true or false.
      • hashCode

        public int hashCode()
        Returns a hash code for this instance.
        Overrides:
        hashCode in class Object
        Returns:
        A hash code.