public class CategoryAxis extends Axis implements Cloneable, Serializable
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_AXIS_MARGIN
The default margin for the axis (used for both lower and upper margins).
|
static double |
DEFAULT_CATEGORY_MARGIN
The default margin between categories (a percentage of the overall axis
length).
|
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 and Description |
---|
CategoryAxis()
Creates a new category axis with no label.
|
CategoryAxis(String label)
Constructs a category axis, using default values where necessary.
|
Modifier and Type | Method and Description |
---|---|
void |
addCategoryLabelToolTip(Comparable category,
String tooltip)
Adds a tooltip to the specified category and sends an
AxisChangeEvent to all registered listeners. |
void |
addCategoryLabelURL(Comparable category,
String url)
Adds a URL (to be used in image maps) to the specified category and
sends an
AxisChangeEvent to all registered listeners. |
void |
clearCategoryLabelToolTips()
Clears the category label tooltips and sends an
AxisChangeEvent
to all registered listeners. |
void |
clearCategoryLabelURLs()
Clears the category label URLs and sends an
AxisChangeEvent
to all registered listeners. |
Object |
clone()
Creates a clone of the axis.
|
void |
configure()
Configures the axis against the current plot.
|
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).
|
void |
drawTickMarks(Graphics2D g2,
double cursor,
Rectangle2D dataArea,
org.jfree.ui.RectangleEdge edge,
AxisState state)
Draws the tick marks.
|
boolean |
equals(Object obj)
Tests this axis for equality with an arbitrary object.
|
double |
getCategoryEnd(int category,
int categoryCount,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
Returns the end coordinate for the specified category.
|
double |
getCategoryJava2DCoordinate(CategoryAnchor anchor,
int category,
int categoryCount,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
Returns the Java 2D coordinate for a category.
|
int |
getCategoryLabelPositionOffset()
Returns the offset between the axis and the category labels (before
label positioning is taken into account).
|
CategoryLabelPositions |
getCategoryLabelPositions()
Returns the category label position specification (this contains label
positioning info for all four possible axis locations).
|
String |
getCategoryLabelToolTip(Comparable category)
Returns the tool tip text for the label belonging to the specified
category.
|
String |
getCategoryLabelURL(Comparable category)
Returns the URL for the label belonging to the specified category.
|
double |
getCategoryMargin()
Returns the category margin.
|
double |
getCategoryMiddle(Comparable category,
List categories,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
A convenience method that returns the axis coordinate for the centre of
a category.
|
double |
getCategoryMiddle(int category,
int categoryCount,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
Returns the middle coordinate for the specified category.
|
double |
getCategorySeriesMiddle(Comparable category,
Comparable seriesKey,
CategoryDataset dataset,
double itemMargin,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
Returns the middle coordinate (in Java2D space) for a series within a
category.
|
double |
getCategorySeriesMiddle(int categoryIndex,
int categoryCount,
int seriesIndex,
int seriesCount,
double itemMargin,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
Returns the middle coordinate (in Java2D space) for a series within a
category.
|
double |
getCategoryStart(int category,
int categoryCount,
Rectangle2D area,
org.jfree.ui.RectangleEdge edge)
Returns the starting coordinate for the specified category.
|
double |
getLowerMargin()
Returns the lower margin for the axis.
|
int |
getMaximumCategoryLabelLines()
Returns the maximum number of lines to use for each category label.
|
float |
getMaximumCategoryLabelWidthRatio()
Returns the category label width ratio.
|
Font |
getTickLabelFont(Comparable category)
Returns the font for the tick label for the given category.
|
Paint |
getTickLabelPaint(Comparable category)
Returns the paint for the tick label for the given category.
|
double |
getUpperMargin()
Returns the upper margin for the axis.
|
int |
hashCode()
Returns a hash code for this object.
|
List |
refreshTicks(Graphics2D g2,
AxisState state,
Rectangle2D dataArea,
org.jfree.ui.RectangleEdge edge)
Creates a temporary list of ticks that can be used when drawing the axis.
|
void |
removeCategoryLabelToolTip(Comparable category)
Removes the tooltip for the specified category and, if there was a value
associated with that category, sends an
AxisChangeEvent to all
registered listeners. |
void |
removeCategoryLabelURL(Comparable category)
Removes the URL for the specified category and, if there was a URL
associated with that category, sends an
AxisChangeEvent to all
registered listeners. |
AxisSpace |
reserveSpace(Graphics2D g2,
Plot plot,
Rectangle2D plotArea,
org.jfree.ui.RectangleEdge edge,
AxisSpace space)
Estimates the space required for the axis, given a specific drawing area.
|
void |
setCategoryLabelPositionOffset(int offset)
Sets the offset between the axis and the category labels (before label
positioning is taken into account) and sends a change event to all
registered listeners.
|
void |
setCategoryLabelPositions(CategoryLabelPositions positions)
Sets the category label position specification for the axis and sends an
AxisChangeEvent to all registered listeners. |
void |
setCategoryMargin(double margin)
Sets the category margin and sends an
AxisChangeEvent to all
registered listeners. |
void |
setLowerMargin(double margin)
Sets the lower margin for the axis and sends an
AxisChangeEvent
to all registered listeners. |
void |
setMaximumCategoryLabelLines(int lines)
Sets the maximum number of lines to use for each category label and
sends an
AxisChangeEvent to all registered listeners. |
void |
setMaximumCategoryLabelWidthRatio(float ratio)
Sets the maximum category label width ratio and sends an
AxisChangeEvent to all registered listeners. |
void |
setTickLabelFont(Comparable category,
Font font)
Sets the font for the tick label for the specified category and sends
an
AxisChangeEvent to all registered listeners. |
void |
setTickLabelPaint(Comparable category,
Paint paint)
Sets the paint for the tick label for the specified category and sends
an
AxisChangeEvent to all registered listeners. |
void |
setUpperMargin(double margin)
Sets the upper margin for the axis and sends an
AxisChangeEvent
to all registered listeners. |
addChangeListener, createAttributedLabel, getAttributedLabel, getAxisLinePaint, getAxisLineStroke, getFixedDimension, getLabel, getLabelAngle, getLabelFont, getLabelInsets, getLabelLocation, getLabelPaint, getMinorTickMarkInsideLength, getMinorTickMarkOutsideLength, getPlot, getTickLabelFont, getTickLabelInsets, getTickLabelPaint, getTickMarkInsideLength, getTickMarkOutsideLength, getTickMarkPaint, getTickMarkStroke, hasListener, isAxisLineVisible, isMinorTickMarksVisible, isTickLabelsVisible, isTickMarksVisible, isVisible, 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
public static final double DEFAULT_AXIS_MARGIN
public static final double DEFAULT_CATEGORY_MARGIN
public CategoryAxis()
public CategoryAxis(String label)
label
- the axis label (null
permitted).public double getLowerMargin()
getUpperMargin()
,
setLowerMargin(double)
public void setLowerMargin(double margin)
AxisChangeEvent
to all registered listeners.margin
- the margin as a percentage of the axis length (for
example, 0.05 is five percent).getLowerMargin()
public double getUpperMargin()
getLowerMargin()
,
setUpperMargin(double)
public void setUpperMargin(double margin)
AxisChangeEvent
to all registered listeners.margin
- the margin as a percentage of the axis length (for
example, 0.05 is five percent).getUpperMargin()
public double getCategoryMargin()
setCategoryMargin(double)
public void setCategoryMargin(double margin)
AxisChangeEvent
to all
registered listeners. The overall category margin is distributed over
N-1 gaps, where N is the number of categories on the axis.margin
- the margin as a percentage of the axis length (for
example, 0.05 is five percent).getCategoryMargin()
public int getMaximumCategoryLabelLines()
setMaximumCategoryLabelLines(int)
public void setMaximumCategoryLabelLines(int lines)
AxisChangeEvent
to all registered listeners.lines
- the maximum number of lines.getMaximumCategoryLabelLines()
public float getMaximumCategoryLabelWidthRatio()
setMaximumCategoryLabelWidthRatio(float)
public void setMaximumCategoryLabelWidthRatio(float ratio)
AxisChangeEvent
to all registered listeners.ratio
- the ratio.getMaximumCategoryLabelWidthRatio()
public int getCategoryLabelPositionOffset()
setCategoryLabelPositionOffset(int)
public void setCategoryLabelPositionOffset(int offset)
offset
- the offset (in Java2D units).getCategoryLabelPositionOffset()
public CategoryLabelPositions getCategoryLabelPositions()
null
).setCategoryLabelPositions(CategoryLabelPositions)
public void setCategoryLabelPositions(CategoryLabelPositions positions)
AxisChangeEvent
to all registered listeners.positions
- the positions (null
not permitted).getCategoryLabelPositions()
public Font getTickLabelFont(Comparable category)
category
- the category (null
not permitted).null
).setTickLabelFont(Comparable, Font)
public void setTickLabelFont(Comparable category, Font font)
AxisChangeEvent
to all registered listeners.category
- the category (null
not permitted).font
- the font (null
permitted).getTickLabelFont(Comparable)
public Paint getTickLabelPaint(Comparable category)
category
- the category (null
not permitted).null
).Axis.setTickLabelPaint(Paint)
public void setTickLabelPaint(Comparable category, Paint paint)
AxisChangeEvent
to all registered listeners.category
- the category (null
not permitted).paint
- the paint (null
permitted).getTickLabelPaint(Comparable)
public void addCategoryLabelToolTip(Comparable category, String tooltip)
AxisChangeEvent
to all registered listeners.category
- the category (null
not permitted).tooltip
- the tooltip text (null
permitted).removeCategoryLabelToolTip(Comparable)
public String getCategoryLabelToolTip(Comparable category)
category
- the category (null
not permitted).null
).addCategoryLabelToolTip(Comparable, String)
,
removeCategoryLabelToolTip(Comparable)
public void removeCategoryLabelToolTip(Comparable category)
AxisChangeEvent
to all
registered listeners.category
- the category (null
not permitted).addCategoryLabelToolTip(Comparable, String)
,
clearCategoryLabelToolTips()
public void clearCategoryLabelToolTips()
AxisChangeEvent
to all registered listeners.public void addCategoryLabelURL(Comparable category, String url)
AxisChangeEvent
to all registered listeners.category
- the category (null
not permitted).url
- the URL text (null
permitted).removeCategoryLabelURL(Comparable)
public String getCategoryLabelURL(Comparable category)
category
- the category (null
not permitted).null
).addCategoryLabelURL(Comparable, String)
,
removeCategoryLabelURL(Comparable)
public void removeCategoryLabelURL(Comparable category)
AxisChangeEvent
to all
registered listeners.category
- the category (null
not permitted).addCategoryLabelURL(Comparable, String)
,
clearCategoryLabelURLs()
public void clearCategoryLabelURLs()
AxisChangeEvent
to all registered listeners.addCategoryLabelURL(Comparable, String)
,
removeCategoryLabelURL(Comparable)
public double getCategoryJava2DCoordinate(CategoryAnchor anchor, int category, int categoryCount, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
anchor
- the anchor point.category
- the category index.categoryCount
- the category count.area
- the data area.edge
- the location of the axis.public double getCategoryStart(int category, int categoryCount, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
category
- the category.categoryCount
- the number of categories.area
- the data area.edge
- the axis location.getCategoryMiddle(int, int, Rectangle2D, RectangleEdge)
,
getCategoryEnd(int, int, Rectangle2D, RectangleEdge)
public double getCategoryMiddle(int category, int categoryCount, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
category
- the category.categoryCount
- the number of categories.area
- the data area.edge
- the axis location.getCategoryStart(int, int, Rectangle2D, RectangleEdge)
,
getCategoryEnd(int, int, Rectangle2D, RectangleEdge)
public double getCategoryEnd(int category, int categoryCount, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
category
- the category.categoryCount
- the number of categories.area
- the data area.edge
- the axis location.getCategoryStart(int, int, Rectangle2D, RectangleEdge)
,
getCategoryMiddle(int, int, Rectangle2D, RectangleEdge)
public double getCategoryMiddle(Comparable category, List categories, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
category
- the category key (null
not permitted).categories
- the categories (null
not permitted).area
- the data area (null
not permitted).edge
- the edge along which the axis lies (null
not
permitted).getCategorySeriesMiddle(Comparable, Comparable, CategoryDataset,
double, Rectangle2D, RectangleEdge)
public double getCategorySeriesMiddle(Comparable category, Comparable seriesKey, CategoryDataset dataset, double itemMargin, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
category
- the category (null
not permitted).seriesKey
- the series key (null
not permitted).dataset
- the dataset (null
not permitted).itemMargin
- the item margin (0.0 <= itemMargin < 1.0);area
- the area (null
not permitted).edge
- the edge (null
not permitted).public double getCategorySeriesMiddle(int categoryIndex, int categoryCount, int seriesIndex, int seriesCount, double itemMargin, Rectangle2D area, org.jfree.ui.RectangleEdge edge)
categoryIndex
- the category index.categoryCount
- the category count.seriesIndex
- the series index.seriesCount
- the series count.itemMargin
- the item margin (0.0 <= itemMargin < 1.0);area
- the area (null
not permitted).edge
- the edge (null
not permitted).public AxisSpace reserveSpace(Graphics2D g2, Plot plot, Rectangle2D plotArea, org.jfree.ui.RectangleEdge edge, AxisSpace space)
reserveSpace
in class Axis
g2
- the graphics device (used to obtain font information).plot
- the plot that the axis belongs to.plotArea
- the area within which the axis should be drawn.edge
- the axis location (top or bottom).space
- the space already reserved.public void configure()
public AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge, PlotRenderingInfo plotState)
draw
in class Axis
g2
- the graphics device (null
not permitted).cursor
- the cursor location.plotArea
- the area within which the axis should be drawn
(null
not permitted).dataArea
- the area within which the plot is being drawn
(null
not permitted).edge
- the location of the axis (null
not permitted).plotState
- collects information about the plot
(null
permitted).null
).public List refreshTicks(Graphics2D g2, AxisState state, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge)
refreshTicks
in class Axis
g2
- the graphics device (used to get font measurements).state
- the axis state.dataArea
- the area inside the axes.edge
- the location of the axis.public void drawTickMarks(Graphics2D g2, double cursor, Rectangle2D dataArea, org.jfree.ui.RectangleEdge edge, AxisState state)
g2
- the graphics target.cursor
- the cursor position (an offset when drawing multiple axes)dataArea
- the area for plotting the data.edge
- the location of the axis.state
- the axis state.public Object clone() throws CloneNotSupportedException
clone
in class Axis
CloneNotSupportedException
- if some component of the axis does
not support cloning.public boolean equals(Object obj)
Jas4pp 1.5 © Java Analysis Studio for Particle Physics