org.jfree.chart.axis
Class VerticalColorBarAxis

java.lang.Object
  |
  +--org.jfree.chart.axis.Axis
        |
        +--org.jfree.chart.axis.ValueAxis
              |
              +--org.jfree.chart.axis.NumberAxis
                    |
                    +--org.jfree.chart.axis.VerticalNumberAxis
                          |
                          +--org.jfree.chart.axis.VerticalColorBarAxis
All Implemented Interfaces:
AxisConstants, ColorBarAxis, java.io.Serializable, VerticalAxis

public class VerticalColorBarAxis
extends VerticalNumberAxis
implements ColorBarAxis, java.io.Serializable

A vertical ColorBar. This class extends the VerticalNumberAxis to provide a) tickmarks, b) ticklabels, c) axis label, d) mapping between java2D and plot units.

Author:
David M. O'Donnell
See Also:
Serialized Form

Field Summary
static int DEFAULT_COLORBAR_THICKNESS
          The default color bar thickness.
static double DEFAULT_COLORBAR_THICKNESS_PCT
          The default color bar thickness as a percentage.
static int DEFAULT_OUTERGAP
          The default outer gap.
 
Fields inherited from class org.jfree.chart.axis.VerticalNumberAxis
DEFAULT_VERTICAL_LABEL
 
Fields inherited from class org.jfree.chart.axis.NumberAxis
DEFAULT_AUTO_RANGE_INCLUDES_ZERO, DEFAULT_AUTO_RANGE_STICKY_ZERO, DEFAULT_TICK_UNIT
 
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 interface org.jfree.chart.axis.AxisConstants
BOTTOM, DEFAULT_AXIS_LABEL_FONT, DEFAULT_AXIS_LABEL_INSETS, DEFAULT_AXIS_LABEL_PAINT, 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, LEFT, RIGHT, TOP
 
Constructor Summary
VerticalColorBarAxis(java.lang.String label)
          Constructs a vertical colorbar, using default values where necessary.
 
Method Summary
protected  void autoAdjustRange()
          Sets the axis minimum and maximum values so that all the data is visible.
 void doAutoRange()
          This is cheat to make autoAdjustRange public.
 void draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D drawArea, java.awt.geom.Rectangle2D plotArea, int location)
          Draws the plot on a Java 2D graphics device (such as the screen or a printer).
 void drawColorBar(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D colorBarArea)
          Draws the plot on a Java 2D graphics device (such as the screen or a printer).
 ColorPalette getColorPalette()
          Returns current ColorPalette.
 java.awt.Paint getPaint(double value)
          Returns the Paint associated with a value.
protected  boolean isCompatiblePlot(Plot plot)
          Returns true if the specified plot is compatible with the axis, and false otherwise.
 void refreshTicks(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D drawArea, java.awt.geom.Rectangle2D plotArea, int location)
          Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).
 double reserveWidth(java.awt.Graphics2D g2, Plot plot, java.awt.geom.Rectangle2D drawArea, int location)
          Returns the axis width.
 void setColorPalette(ColorPalette palette)
          Set the ColorPalette.
 void setMaximumAxisValue(double value)
          Sets the maximum axis value.
 void setMinimumAxisValue(double value)
          Sets the minimum axis value.
 double tickLabelWidth(java.awt.Graphics2D g2, java.lang.String tickLabel)
          Returns the tick label width.
 
Methods inherited from class org.jfree.chart.axis.VerticalNumberAxis
configure, isVerticalLabel, reserveWidth, selectAutoTickUnit, setVerticalLabel, translateJava2DtoValue, translateValueToJava2D
 
Methods inherited from class org.jfree.chart.axis.NumberAxis
autoRangeIncludesZero, autoRangeStickyZero, calculateHighestVisibleTickValue, calculateLowestVisibleTickValue, calculateVisibleTickCount, createIntegerTickUnits, createIntegerTickUnits, createStandardTickUnits, createStandardTickUnits, getNumberFormatOverride, getTickUnit, setAutoRangeIncludesZero, setAutoRangeStickyZero, setNumberFormatOverride, setTickUnit, setTickUnit
 
Methods inherited from class org.jfree.chart.axis.ValueAxis
centerRange, getAnchorValue, getAutoRangeMinimumSize, getAutoTickIndex, getFixedAutoRange, getLowerMargin, getMaximumAxisValue, getMinimumAxisValue, getRange, getStandardTickUnits, getUpperMargin, isAutoRange, isAutoTickUnitSelection, isInverted, resizeRange, resizeRange, setAnchoredRange, setAnchorValue, setAnchorValueAttribute, setAutoRange, setAutoRange, setAutoRangeMinimumSize, setAutoRangeMinimumSize, setAutoTickIndex, setAutoTickUnitSelection, setAutoTickUnitSelection, setFixedAutoRange, setInverted, setLowerMargin, setRange, setRange, setRangeAboutValue, setRangeAttribute, setStandardTickUnits, setUpperMargin
 
Methods inherited from class org.jfree.chart.axis.Axis
addChangeListener, drawHorizontalLabel, drawVerticalLabel, equals, getFixedDimension, getLabel, getLabelFont, getLabelInsets, getLabelPaint, getMaxTickLabelWidth, getPlot, getTickLabelFont, getTickLabelInsets, getTickLabelPaint, getTickMarkInsideLength, getTickMarkOutsideLength, getTickMarkPaint, getTickMarkStroke, getTicks, isTickLabelsVisible, isTickMarksVisible, isVisible, notifyListeners, removeChangeListener, setFixedDimension, setLabel, setLabelFont, setLabelInsets, setLabelPaint, setPlot, setTickLabelFont, setTickLabelInsets, setTickLabelPaint, setTickLabelsVisible, setTickMarkInsideLength, setTickMarkOutsideLength, setTickMarkPaint, setTickMarkStroke, setTickMarksVisible, setVisible
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_COLORBAR_THICKNESS

public static final int DEFAULT_COLORBAR_THICKNESS
The default color bar thickness.

See Also:
Constant Field Values

DEFAULT_COLORBAR_THICKNESS_PCT

public static final double DEFAULT_COLORBAR_THICKNESS_PCT
The default color bar thickness as a percentage.

See Also:
Constant Field Values

DEFAULT_OUTERGAP

public static final int DEFAULT_OUTERGAP
The default outer gap.

See Also:
Constant Field Values
Constructor Detail

VerticalColorBarAxis

public VerticalColorBarAxis(java.lang.String label)
Constructs a vertical colorbar, using default values where necessary.

Parameters:
label - the axis label (null permitted).
Method Detail

autoAdjustRange

protected void autoAdjustRange()
Sets the axis minimum and maximum values so that all the data is visible.

You can control the range calculation in several ways. First, you can define upper and lower margins as a percentage of the data range (the default is a 5% margin for each). Second, you can set a flag that forces the range to include zero. Finally, you can set another flag, the 'sticky zero' flag, that only affects the range when zero falls within the axis margins. When this happens, the margin is truncated so that zero is the upper or lower limit for the axis.

Overrides:
autoAdjustRange in class VerticalNumberAxis

draw

public void draw(java.awt.Graphics2D g2,
                 java.awt.geom.Rectangle2D drawArea,
                 java.awt.geom.Rectangle2D plotArea,
                 int location)
Draws the plot on a Java 2D graphics device (such as the screen or a printer).

Overrides:
draw in class VerticalNumberAxis
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).
location - the axis location.

drawColorBar

public void drawColorBar(java.awt.Graphics2D g2,
                         java.awt.geom.Rectangle2D colorBarArea)
Draws the plot on a Java 2D graphics device (such as the screen or a printer).

Parameters:
g2 - the graphics device.
colorBarArea - The area within which the chart should be drawn.

getColorPalette

public ColorPalette getColorPalette()
Returns current ColorPalette.

Specified by:
getColorPalette in interface ColorBarAxis
Returns:
the palette.

getPaint

public java.awt.Paint getPaint(double value)
Returns the Paint associated with a value.

Specified by:
getPaint in interface ColorBarAxis
Parameters:
value - the value.
Returns:
the paint.

isCompatiblePlot

protected boolean isCompatiblePlot(Plot plot)
Returns true if the specified plot is compatible with the axis, and false otherwise.

This class (VerticalNumberAxis) requires that the plot implements the VerticalValuePlot interface.

Overrides:
isCompatiblePlot in class VerticalNumberAxis
Parameters:
plot - the plot.
Returns:
true if the specified plot is compatible with the axis, and false otherwise.

setColorPalette

public void setColorPalette(ColorPalette palette)
Set the ColorPalette.

Specified by:
setColorPalette in interface ColorBarAxis
Parameters:
palette - the new palette.

setMaximumAxisValue

public void setMaximumAxisValue(double value)
Sets the maximum axis value.

Overrides:
setMaximumAxisValue in class ValueAxis
Parameters:
value - the value.

setMinimumAxisValue

public void setMinimumAxisValue(double value)
Sets the minimum axis value.

Overrides:
setMinimumAxisValue in class ValueAxis
Parameters:
value - the value.

tickLabelWidth

public double tickLabelWidth(java.awt.Graphics2D g2,
                             java.lang.String tickLabel)
Returns the tick label width.

Parameters:
g2 - the graphics device.
tickLabel - the tick label.
Returns:
the width.

refreshTicks

public void refreshTicks(java.awt.Graphics2D g2,
                         java.awt.geom.Rectangle2D drawArea,
                         java.awt.geom.Rectangle2D plotArea,
                         int location)
Calculates the positions of the tick labels for the axis, storing the results in the tick label list (ready for drawing).

Overrides:
refreshTicks in class VerticalNumberAxis
Parameters:
g2 - the graphics device.
drawArea - the area in which the plot and the axes should be drawn.
plotArea - the area in which the plot should be drawn.
location - the location.

reserveWidth

public double reserveWidth(java.awt.Graphics2D g2,
                           Plot plot,
                           java.awt.geom.Rectangle2D drawArea,
                           int location)
Returns the axis width.

Specified by:
reserveWidth in interface VerticalAxis
Overrides:
reserveWidth in class VerticalNumberAxis
Parameters:
g2 - the graphics device.
plot - the plot.
drawArea - the draw area.
location - the axis location.
Returns:
the width.

doAutoRange

public void doAutoRange()
This is cheat to make autoAdjustRange public.

Specified by:
doAutoRange in interface ColorBarAxis