Package org.jfree.chart.axis
Class SymbolicAxis
java.lang.Object
org.jfree.chart.axis.Axis
org.jfree.chart.axis.ValueAxis
org.jfree.chart.axis.NumberAxis
org.jfree.chart.axis.SymbolicAxis
- All Implemented Interfaces:
Serializable,Cloneable,org.jfree.util.PublicCloneable
public class SymbolicAxis extends NumberAxis implements Serializable
A standard linear value axis, for SYMBOLIC values.
- Author:
- Anthony Boulestreau
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static PaintDEFAULT_SYMBOLIC_GRID_LINE_PAINTThe default symbolic grid line paint.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_LABELSFields 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_COUNTFields 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
Constructors Constructor Description SymbolicAxis(String label, String[] sv)Constructs a symbolic axis, using default attribute values where necessary. -
Method Summary
Modifier and Type Method Description AxisStatedraw(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).voiddrawSymbolicGridLines(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge, List ticks)Draws the symbolic grid lines.voiddrawSymbolicGridLinesHorizontal(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, boolean firstGridLineIsDark, List ticks)Draws the symbolic grid lines.voiddrawSymbolicGridLinesVertical(Graphics2D g2, Rectangle2D drawArea, Rectangle2D plotArea, boolean firstGridLineIsDark, List ticks)Draws the symbolic grid lines.Rectangle2D.DoublegetSymbolicGridLine(int position)Get the symbolic grid line corresponding to the specified position.PaintgetSymbolicGridPaint()Returns the symbolic grid line color.String[]getSymbolicValue()Returns the list of the symbolic values to display.booleanisGridLinesVisible()Returnstrueif the symbolic grid lines are showing, and false otherwise.ListrefreshTicks(Graphics2D g2, AxisState state, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).ListrefreshTicksHorizontal(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).ListrefreshTicksVertical(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).voidsetSymbolicGridLinesVisible(boolean flag)Sets the visibility of the symbolic grid lines and notifies registered listeners that the axis has been modified.StringvalueToString(double value)Converts a value to a string, using the list of symbolic values.Methods inherited from class org.jfree.chart.axis.NumberAxis
autoRangeIncludesZero, autoRangeStickyZero, calculateHighestVisibleTickValue, calculateLowestVisibleTickValue, calculateVisibleTickCount, clone, configure, createIntegerTickUnits, createIntegerTickUnits, createStandardTickUnits, createStandardTickUnits, equals, getDecimalFormat, getMarkerBand, getNumberFormatOverride, getTickUnit, java2DToValue, setAutoRangeIncludesZero, setAutoRangeStickyZero, setMarkerBand, setNumberFormatOverride, setTickUnit, setTickUnit, stringReplace, translateJava2DToValue, translateValueToJava2D, valueToJava2DMethods inherited from class org.jfree.chart.axis.ValueAxis
centerRange, getAutoRangeMinimumSize, getDownArrow, getFixedAutoRange, getLeftArrow, getLowerBound, getLowerMargin, getMaximumAxisValue, getMinimumAxisValue, getRange, getRightArrow, getStandardTickUnits, getUpArrow, getUpperBound, getUpperMargin, isAutoRange, isAutoTickUnitSelection, isInverted, isNegativeArrowVisible, isPositiveArrowVisible, isVerticalTickLabels, reserveSpace, resizeRange, resizeRange, setAutoRange, setAutoRangeMinimumSize, setAutoRangeMinimumSize, setAutoTickUnitSelection, setAutoTickUnitSelection, setDownArrow, setFixedAutoRange, setInverted, setLeftArrow, setLowerBound, setLowerMargin, setMaximumAxisValue, setMinimumAxisValue, setNegativeArrowVisible, setPositiveArrowVisible, setRange, setRange, setRange, setRangeAboutValue, setRangeWithMargins, setRangeWithMargins, setRangeWithMargins, setRightArrow, setStandardTickUnits, setUpArrow, setUpperBound, setUpperMargin, setVerticalTickLabels, translateJava2DtoValue, zoomRangeMethods inherited from class org.jfree.chart.axis.Axis
addChangeListener, getAxisLinePaint, getAxisLineStroke, getFixedDimension, getLabel, getLabelAngle, getLabelFont, getLabelInsets, getLabelPaint, getPlot, getTickLabelFont, getTickLabelInsets, getTickLabelPaint, getTickMarkInsideLength, getTickMarkOutsideLength, getTickMarkPaint, getTickMarkStroke, isAxisLineVisible, isTickLabelsVisible, isTickMarksVisible, isVisible, removeChangeListener, setAxisLinePaint, setAxisLineStroke, setAxisLineVisible, setFixedDimension, setLabel, setLabelAngle, setLabelFont, setLabelInsets, setLabelPaint, setPlot, setTickLabelFont, setTickLabelInsets, setTickLabelPaint, setTickLabelsVisible, setTickMarkInsideLength, setTickMarkOutsideLength, setTickMarkPaint, setTickMarkStroke, setTickMarksVisible, setVisible
-
Field Details
-
DEFAULT_SYMBOLIC_GRID_LINE_PAINT
The default symbolic grid line paint.
-
-
Constructor Details
-
SymbolicAxis
Constructs a symbolic axis, using default attribute values where necessary.- Parameters:
label- the axis label (null permitted).sv- the list of symbolic values to display instead of the numeric value.
-
-
Method Details
-
getSymbolicValue
Returns the list of the symbolic values to display.- Returns:
- list of symbolic values.
-
getSymbolicGridPaint
Returns the symbolic grid line color.- Returns:
- the grid line color.
-
isGridLinesVisible
public boolean isGridLinesVisible()Returnstrueif the symbolic grid lines are showing, and false otherwise.- Returns:
- true if the symbolic grid lines are showing, and false otherwise.
-
setSymbolicGridLinesVisible
public void setSymbolicGridLinesVisible(boolean flag)Sets the visibility of the symbolic grid lines and notifies registered listeners that the axis has been modified.- Parameters:
flag- the new setting.
-
draw
public 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).- Overrides:
drawin classNumberAxis- Parameters:
g2- the graphics device (nullnot permitted).cursor- the cursor location.plotArea- the area within which the plot and axes should be drawn (nullnot permitted).dataArea- the area within which the data should be drawn (nullnot permitted).edge- the axis location (nullnot permitted).plotState- collects information about the plot (nullpermitted).- Returns:
- the axis state (never
null).
-
drawSymbolicGridLines
public void drawSymbolicGridLines(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge, List ticks)Draws the symbolic grid lines.The colors are consecutively the color specified by
symbolicGridPaint(DEFAULT_SYMBOLIC_GRID_LINE_PAINTby default) and white.- Parameters:
g2- the graphics device.plotArea- the area within which the chart should be drawn.dataArea- the area within which the plot should be drawn (a subset of the drawArea).edge- the axis location.ticks- the ticks.
-
drawSymbolicGridLinesHorizontal
public void drawSymbolicGridLinesHorizontal(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, boolean firstGridLineIsDark, List ticks)Draws the symbolic grid lines.The colors are consecutively the color specified by
symbolicGridPaint(DEFAULT_SYMBOLIC_GRID_LINE_PAINTby default) and white. or iffirstGridLineIsDarkistruewhite and the color specified bysymbolicGridPaint.- Parameters:
g2- the graphics device.plotArea- the area within which the chart should be drawn.dataArea- the area within which the plot should be drawn (a subset of the drawArea).firstGridLineIsDark- True: the first symbolic grid line take the color ofsymbolicGridPaint. False: the first symbolic grid line is white.ticks- the ticks.
-
getSymbolicGridLine
Get the symbolic grid line corresponding to the specified position.- Parameters:
position- position of the grid line, startinf from 0.- Returns:
- the symbolic grid line corresponding to the specified position.
-
refreshTicks
public List refreshTicks(Graphics2D g2, AxisState state, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).- Overrides:
refreshTicksin classNumberAxis- Parameters:
g2- the graphics device.state- the axis state.plotArea- the area in which the plot (inlcuding axes) should be drawn.dataArea- the area in which the data should be drawn.edge- the location of the axis.- Returns:
- A list of ticks.
-
refreshTicksHorizontal
public List refreshTicksHorizontal(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).- Parameters:
g2- the graphics device.cursor- the cursor position for drawing the axis.plotArea- the area in which the plot (inlcuding axes) should be drawn.dataArea- the area in which the data should be drawn.edge- the location of the axis.- Returns:
- The ticks.
-
refreshTicksVertical
public List refreshTicksVertical(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).- Parameters:
g2- the graphics device.cursor- the cursor position for drawing the axis.plotArea- the area in which the plot and the axes should be drawn.dataArea- the area in which the plot should be drawn.edge- the location of the axis.- Returns:
- The ticks.
-
valueToString
Converts a value to a string, using the list of symbolic values.- Parameters:
value- value to convert.- Returns:
- the symbolic value.
-
drawSymbolicGridLinesVertical
public void drawSymbolicGridLinesVertical(Graphics2D g2, Rectangle2D drawArea, Rectangle2D plotArea, boolean firstGridLineIsDark, List ticks)Draws the symbolic grid lines.The colors are consecutively the color specified by
symbolicGridPaint(DEFAULT_SYMBOLIC_GRID_LINE_PAINTby default) and white. or iffirstGridLineIsDarkistruewhite and the color specified bysymbolicGridPaint.- Parameters:
g2- the graphics device.drawArea- the area within which the chart should be drawn.plotArea- the area within which the plot should be drawn (a subset of the drawArea).firstGridLineIsDark- True: the first symbolic grid line take the color ofsymbolicGridPaint. False: the first symbolic grid line is white.ticks- a list of ticks.
-