- java.lang.Object
-
- org.jfree.chart.axis.Axis
-
- org.jfree.chart.axis.ValueAxis
-
- org.jfree.chart.axis.NumberAxis
-
- org.jfree.chart.axis.SymbolAxis
-
- All Implemented Interfaces:
Serializable,Cloneable,PublicCloneable,ChartElement
public class SymbolAxis extends NumberAxis implements Serializable
A standard linear value axis that replaces integer values with symbols.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static PaintDEFAULT_GRID_BAND_ALTERNATE_PAINTThe default paint for alternate grid bands.static PaintDEFAULT_GRID_BAND_PAINTThe default grid band 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_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_MARGIN, DEFAULT_RANGE, 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
Constructors Constructor Description SymbolAxis(String label, String[] sv)Constructs a symbol axis, using default attribute values where necessary.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidautoAdjustRange()Rescales the axis to ensure that all data is visible.AxisStatedraw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge, PlotRenderingInfo plotState)Draws the axis on a Java 2D graphics device (such as the screen or a printer).protected voiddrawGridBands(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge, List ticks)Draws the grid bands (alternate bands are colored usinggetGridBandPaint()andgetGridBandAlternatePaint().protected voiddrawGridBandsHorizontal(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, boolean firstGridBandIsDark, List ticks)Draws the grid bands for the axis when it is at the top or bottom of the plot.protected voiddrawGridBandsVertical(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, boolean firstGridBandIsDark, List ticks)Draws the grid bands for an axis that is aligned to the left or right of the data area (that is, a vertical axis).booleanequals(Object obj)Tests this axis for equality with an arbitrary object.PaintgetGridBandAlternatePaint()Returns the second paint used to color grid bands (two colors are used alternately, the other is returned bygetGridBandPaint()).PaintgetGridBandPaint()Returns the paint used to color grid bands (two colors are used alternately, the other is returned bygetGridBandAlternatePaint()).String[]getSymbols()Returns an array of the symbols for the axis.booleanisGridBandsVisible()Returns the flag that controls whether or not grid bands are drawn for the axis.ListrefreshTicks(Graphics2D g2, AxisState state, Rectangle2D dataArea, RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).protected ListrefreshTicksHorizontal(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).protected ListrefreshTicksVertical(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge)Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).protected voidselectAutoTickUnit(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge)This operation is not supported by this axis.voidsetGridBandAlternatePaint(Paint paint)Sets the grid band paint and notifies registered listeners that the axis has been changed.voidsetGridBandPaint(Paint paint)Sets the grid band paint and notifies registered listeners that the axis has been changed.voidsetGridBandsVisible(boolean flag)Sets the flag that controls whether or not grid bands are drawn for this axis and notifies registered listeners that the axis has been modified.StringvalueToString(double value)Converts a value to a string, using the list of symbols.-
Methods inherited from class org.jfree.chart.axis.NumberAxis
calculateHighestVisibleTickValue, calculateLowestVisibleTickValue, calculateVisibleTickCount, clone, configure, createIntegerTickUnits, createIntegerTickUnits, createStandardTickUnits, createStandardTickUnits, estimateMaximumTickLabelHeight, estimateMaximumTickLabelWidth, getAutoRangeIncludesZero, getAutoRangeStickyZero, getMarkerBand, getNumberFormatOverride, getRangeType, getTickUnit, hashCode, java2DToValue, selectHorizontalAutoTickUnit, selectVerticalAutoTickUnit, setAutoRangeIncludesZero, setAutoRangeStickyZero, setMarkerBand, setNumberFormatOverride, setRangeType, setTickUnit, setTickUnit, valueToJava2D
-
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, lengthToJava2D, pan, reserveSpace, resizeRange, resizeRange, 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, createAttributedLabel, drawAttributedLabel, drawLabel, fireChangeEvent, getAttributedLabel, getAxisLinePaint, getAxisLineStroke, getFixedDimension, getLabel, getLabelAngle, getLabelEnclosure, getLabelFont, getLabelInsets, getLabelLocation, getLabelPaint, getMinorTickMarkInsideLength, getMinorTickMarkOutsideLength, getPlot, getTickLabelFont, getTickLabelInsets, getTickLabelPaint, getTickMarkInsideLength, getTickMarkOutsideLength, getTickMarkPaint, getTickMarkStroke, hasListener, isAxisLineVisible, isMinorTickMarksVisible, isTickLabelsVisible, isTickMarksVisible, isVisible, labelAnchorH, labelAnchorV, labelLocationX, labelLocationY, notifyListeners, receive, removeChangeListener, setAttributedLabel, setAttributedLabel, setAxisLinePaint, setAxisLineStroke, setAxisLineVisible, setFixedDimension, setLabel, setLabelAngle, setLabelFont, setLabelInsets, setLabelInsets, setLabelLocation, setLabelPaint, setMinorTickMarkInsideLength, setMinorTickMarkOutsideLength, setMinorTickMarksVisible, setPlot, setTickLabelFont, setTickLabelInsets, setTickLabelPaint, setTickLabelsVisible, setTickMarkInsideLength, setTickMarkOutsideLength, setTickMarkPaint, setTickMarkStroke, setTickMarksVisible, setVisible
-
-
-
-
Field Detail
-
DEFAULT_GRID_BAND_PAINT
public static final Paint DEFAULT_GRID_BAND_PAINT
The default grid band paint.
-
DEFAULT_GRID_BAND_ALTERNATE_PAINT
public static final Paint DEFAULT_GRID_BAND_ALTERNATE_PAINT
The default paint for alternate grid bands.
-
-
Constructor Detail
-
SymbolAxis
public SymbolAxis(String label, String[] sv)
Constructs a symbol axis, using default attribute values where necessary.- Parameters:
label- the axis label (nullpermitted).sv- the list of symbols to display instead of the numeric values.
-
-
Method Detail
-
getSymbols
public String[] getSymbols()
Returns an array of the symbols for the axis.- Returns:
- The symbols.
-
isGridBandsVisible
public boolean isGridBandsVisible()
Returns the flag that controls whether or not grid bands are drawn for the axis. The default value istrue.- Returns:
- A boolean.
- See Also:
setGridBandsVisible(boolean)
-
setGridBandsVisible
public void setGridBandsVisible(boolean flag)
Sets the flag that controls whether or not grid bands are drawn for this axis and notifies registered listeners that the axis has been modified. Each band is the area between two adjacent gridlines running perpendicular to the axis. When the bands are drawn they are filled with the colorsgetGridBandPaint()andgetGridBandAlternatePaint()in an alternating sequence.- Parameters:
flag- the new setting.- See Also:
isGridBandsVisible()
-
getGridBandPaint
public Paint getGridBandPaint()
Returns the paint used to color grid bands (two colors are used alternately, the other is returned bygetGridBandAlternatePaint()). The default value isDEFAULT_GRID_BAND_PAINT.- Returns:
- The paint (never
null). - See Also:
setGridBandPaint(Paint),isGridBandsVisible()
-
setGridBandPaint
public void setGridBandPaint(Paint paint)
Sets the grid band paint and notifies registered listeners that the axis has been changed. See thesetGridBandsVisible(boolean)method for more information about grid bands.- Parameters:
paint- the paint (nullnot permitted).- See Also:
getGridBandPaint()
-
getGridBandAlternatePaint
public Paint getGridBandAlternatePaint()
Returns the second paint used to color grid bands (two colors are used alternately, the other is returned bygetGridBandPaint()). The default value isDEFAULT_GRID_BAND_ALTERNATE_PAINT(transparent).- Returns:
- The paint (never
null). - See Also:
setGridBandAlternatePaint(Paint)
-
setGridBandAlternatePaint
public void setGridBandAlternatePaint(Paint paint)
Sets the grid band paint and notifies registered listeners that the axis has been changed. See thesetGridBandsVisible(boolean)method for more information about grid bands.- Parameters:
paint- the paint (nullnot permitted).- See Also:
getGridBandAlternatePaint(),setGridBandPaint(Paint)
-
selectAutoTickUnit
protected void selectAutoTickUnit(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge)
This operation is not supported by this axis.- Overrides:
selectAutoTickUnitin classNumberAxis- Parameters:
g2- the graphics device.dataArea- the area in which the plot and axes should be drawn.edge- the edge along which the axis is drawn.
-
draw
public AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, 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).
-
drawGridBands
protected void drawGridBands(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, RectangleEdge edge, List ticks)
Draws the grid bands (alternate bands are colored usinggetGridBandPaint()andgetGridBandAlternatePaint().- Parameters:
g2- the graphics target (nullnot permitted).plotArea- the area within which the plot is drawn (nullnot permitted).dataArea- the data area to which the axes are aligned (nullnot permitted).edge- the edge to which the axis is aligned (nullnot permitted).ticks- the ticks (nullnot permitted).
-
drawGridBandsHorizontal
protected void drawGridBandsHorizontal(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, boolean firstGridBandIsDark, List ticks)
Draws the grid bands for the axis when it is at the top or bottom of the plot.- Parameters:
g2- the graphics target (nullnot permitted).plotArea- the area within which the plot is drawn (not used here).dataArea- the area for the data (to which the axes are aligned,nullnot permitted).firstGridBandIsDark- True: the first grid band takes the color ofgridBandPaint. False: the second grid band takes the color ofgridBandPaint.ticks- a list of ticks (nullnot permitted).
-
drawGridBandsVertical
protected void drawGridBandsVertical(Graphics2D g2, Rectangle2D plotArea, Rectangle2D dataArea, boolean firstGridBandIsDark, List ticks)
Draws the grid bands for an axis that is aligned to the left or right of the data area (that is, a vertical axis).- Parameters:
g2- the graphics target (nullnot permitted).plotArea- the area within which the plot is drawn (not used here).dataArea- the area for the data (to which the axes are aligned,nullnot permitted).firstGridBandIsDark- True: the first grid band takes the color ofgridBandPaint. False: the second grid band takes the color ofgridBandPaint.ticks- a list of ticks (nullnot permitted).
-
autoAdjustRange
protected void autoAdjustRange()
Rescales the axis to ensure that all data is visible.- Overrides:
autoAdjustRangein classNumberAxis
-
refreshTicks
public List refreshTicks(Graphics2D g2, AxisState state, Rectangle2D dataArea, 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.dataArea- the area in which the data should be drawn.edge- the location of the axis.- Returns:
- A list of ticks.
-
refreshTicksHorizontal
protected List refreshTicksHorizontal(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge)
Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).- Overrides:
refreshTicksHorizontalin classNumberAxis- Parameters:
g2- the graphics device.dataArea- the area in which the data should be drawn.edge- the location of the axis.- Returns:
- The ticks.
-
refreshTicksVertical
protected List refreshTicksVertical(Graphics2D g2, Rectangle2D dataArea, RectangleEdge edge)
Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).- Overrides:
refreshTicksVerticalin classNumberAxis- Parameters:
g2- the graphics device.dataArea- the area in which the plot should be drawn.edge- the location of the axis.- Returns:
- The ticks.
-
valueToString
public String valueToString(double value)
Converts a value to a string, using the list of symbols.- Parameters:
value- value to convert.- Returns:
- The symbol.
-
equals
public boolean equals(Object obj)
Tests this axis for equality with an arbitrary object.- Overrides:
equalsin classNumberAxis- Parameters:
obj- the object (nullpermitted).- Returns:
- A boolean.
-
-