|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.ijchart.xychart.axis.AbstractAxis
com.ijchart.xychart.axis.value.AbstractValueAxis
com.ijchart.xychart.axis.value.NumberValueAxis
public class NumberValueAxis
Title: IJChart
Description: a chart library for the Java(tm) platform.
显示数字值的坐标轴,坐标轴上的值为double类型.Copyright: Copyright (c) 2013
Company:
Field Summary | |
---|---|
static INumberTickUnit |
DEFAULT_NUMBER_TICK_UNIT
缺省用于产生坐标轴上的刻度值的类. |
protected java.lang.String[] |
numberTicks
数字型的刻度值. |
protected java.lang.String[] |
tickLabels
格式化后的刻度值. |
protected INumberTickUnit |
tickUnit
用于产生坐标轴上的刻度值. |
protected double[] |
valueTicks
刻度值对应的数字值. |
Fields inherited from class com.ijchart.xychart.axis.value.AbstractValueAxis |
---|
DEFAULT_AXIS_TICK_INCLUDE_ZERO, DEFAULT_CROSSHAIR_PAINT, DEFAULT_CROSSHAIR_STROKE, DEFAULT_GRID_BAND_ALTERNATE_PAINT, DEFAULT_GRID_BAND_PAINT, DEFAULT_GRID_BAND_VISIBLE, DEFAULT_INVERTED, DEFAULT_VALUE_LINE_VISIBLE, DEFAULT_VALUE_PAINT, INVALID_COORDINATE_VALUE |
Constructor Summary | |
---|---|
NumberValueAxis(IMatrixDataset dataset)
由数据集构造对象. |
|
NumberValueAxis(java.lang.String label,
IMatrixDataset dataset)
由坐标轴标签和数据集构造对象. |
Method Summary | |
---|---|
protected void |
calculateLabels(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D axisArea,
RectangleEdge edge)
计算实际的标签值. |
java.lang.Object |
clone()
克隆本对象. |
protected double |
convertNumberTick(java.lang.String tick)
把字符串类型的刻度值转化为数字. |
protected IChartShape |
createChartShape(java.awt.geom.Rectangle2D tickLabelDrawRect,
java.lang.String tickLabel)
创建一个RectangleTextChartShape对象. |
protected IChartShape |
createValueLineShape(double x1,
double y1,
double x2,
double y2)
创建值线图形. |
void |
drawGridLine(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D dataArea,
RectangleEdge axisEdge,
RenderShapeCollection shapeCollection,
java.awt.Stroke stroke,
java.awt.Paint paint)
绘制网格线,须在IAxis.draw()方法之后调用. |
protected double |
drawTickLabel(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D plotArea,
java.awt.geom.Rectangle2D axisArea,
RectangleEdge edge,
AxisShapeCollection shapeCollection,
double cursor)
绘制坐标轴上的刻度值的标签. |
protected double |
drawTickLabelReally(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D plotArea,
java.awt.geom.Rectangle2D axisArea,
RectangleEdge edge,
AxisShapeCollection shapeCollection,
double cursor,
java.lang.String[] labels)
真正的绘制坐标轴标签的方法. |
protected double |
drawTickMark(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D axisArea,
RectangleEdge edge,
AxisShapeCollection shapeCollection,
double cursor)
绘制坐标轴上的刻度. |
void |
drawValueLine(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D dataArea,
RectangleEdge edge,
RenderShapeCollection shapeCollection)
绘制值线,须在IAxis.draw()方法之后调用. |
boolean |
equals(java.lang.Object obj)
测试本对象是否和另一个对象相等. |
double |
estimateAxisWidth(RectangleEdge edge,
java.lang.String maxLengthLabel)
根据最长的标签的估算坐标轴的宽度. |
NumberRange |
getDatasetRange()
得到数据集的数据范围. |
protected java.lang.String[] |
getFormatedTickLabels(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D maxAxisArea,
RectangleEdge edge)
返回格式化后的在坐标轴上显示的刻度值. |
protected double |
getLabelMaxDrawWidth(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D plotArea,
RectangleEdge edge,
java.lang.String[] formatedLabels)
计算绘制坐标轴上的标签所需要的最大宽度,并且不超过由参数maximumCategoryLabelWidthRatio确定的整个图表 区域的宽度或高度. |
protected java.lang.String[] |
getNumberLabels(int labelCount)
计算数字标签值. |
java.lang.String[] |
getNumberTicks()
返回数字型的刻度值. |
protected java.lang.String[] |
getTickLabels(java.awt.Graphics2D g2,
java.awt.geom.Rectangle2D axisArea,
RectangleEdge edge)
返回坐标轴刻度值数组. |
protected int |
getTickMarkCount()
返回坐标轴刻度的个数. |
NumberRange |
getTickRange()
得到数据集的数据范围. |
INumberTickUnit |
getTickUnit()
返回用于产生坐标轴上的刻度值的类. |
java.util.TimeZone |
getTimeZone()
返回时区. |
NumberRange |
getUserDefineDatasetRange()
返回用户自定义的数据范围. |
NumberRange |
getZoomDatasetRange()
返回缩放时使用的数据范围. |
int |
hashCode()
计算hashcode. |
protected boolean |
isLogTickUnit()
tickUnit是否是LogTickUnit. |
protected boolean |
isOffsetValueLine()
是否需要偏移坐标轴. |
protected boolean |
isRangeIncludeZero()
返回数据范围是否包含0. |
void |
setTickUnit(INumberTickUnit tickUnit)
设置用于产生坐标轴上的刻度值,并向所有监听器发送 AxisChangeEvent
事件.
|
void |
setTimeZone(java.util.TimeZone timeZone)
设置时区,并向所有监听器发送 AxisChangeEvent 事件.
|
void |
setUserDefineDatasetRange(double lower,
double upper)
设置用户自定义的数据范围,并向所有监听器发送 AxisChangeEvent
事件.
|
void |
setUserDefineDatasetRange(NumberRange range)
设置用户自定义的数据范围,并向所有监听器发送 AxisChangeEvent
事件.
|
void |
setZoomDatasetRange(NumberRange datasetRange)
设置缩放时使用的数据范围,并向所有监听器发送 RenderChangeEvent 事件.
|
java.lang.String |
toString()
覆盖toString方法. |
double |
valueToJava2D(java.awt.geom.Rectangle2D dataArea,
RectangleEdge edge,
double value,
boolean forceInDataArea)
计算某个值对应的数据区的坐标位置,须在IAxis.draw()方法之后调用. |
double |
valueToJava2D(java.awt.geom.Rectangle2D dataArea,
RectangleEdge edge,
double value,
boolean forceInDataArea,
boolean expandAxisRange)
计算某个值对应的数据区的坐标位置,须在IAxis.draw()方法之后调用. |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final INumberTickUnit DEFAULT_NUMBER_TICK_UNIT
protected INumberTickUnit tickUnit
protected java.lang.String[] tickLabels
protected java.lang.String[] numberTicks
protected double[] valueTicks
Constructor Detail |
---|
public NumberValueAxis(IMatrixDataset dataset)
dataset
- IMatrixDataset 二维矩阵数据集 (不可为null).
public NumberValueAxis(java.lang.String label, IMatrixDataset dataset)
label
- 坐标轴标签.
dataset
- IMatrixDataset 二维矩阵数据集 (不可为null).
Method Detail |
---|
public INumberTickUnit getTickUnit()
public void setTickUnit(INumberTickUnit tickUnit)
AxisChangeEvent
事件.
tickUnit
- INumberTickUnit 产生坐标轴上的刻度值的类 (不可为null).
public java.util.TimeZone getTimeZone()
public void setTimeZone(java.util.TimeZone timeZone)
AxisChangeEvent
事件.
timeZone
- TimeZone 时区.
public java.lang.String[] getNumberTicks()
public NumberRange getUserDefineDatasetRange()
public void setUserDefineDatasetRange(double lower, double upper)
AxisChangeEvent
事件.
lower
- double 小的数据值.
upper
- double 大的数据值.
public void setUserDefineDatasetRange(NumberRange range)
AxisChangeEvent
事件.
range
- NumberRange 数据范围 (可为null).
public NumberRange getZoomDatasetRange()
public void setZoomDatasetRange(NumberRange datasetRange)
RenderChangeEvent
事件.
datasetRange
- NumberRange 缩放时使用的数据范围.
public double estimateAxisWidth(RectangleEdge edge, java.lang.String maxLengthLabel)
edge
- RectangleEdge 坐标轴的位置.
maxLengthLabel
- String 最长的标签.
protected double drawTickMark(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D axisArea, RectangleEdge edge, AxisShapeCollection shapeCollection, double cursor)
drawTickMark
in class AbstractAxis
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
axisArea
- Rectangle2D 坐标轴区域.
edge
- RectangleEdge 坐标轴的位置.
shapeCollection
- AxisShapeCollection 坐标轴图形集合.
cursor
- 光标的位置.
protected int getTickMarkCount()
protected double drawTickLabel(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D plotArea, java.awt.geom.Rectangle2D axisArea, RectangleEdge edge, AxisShapeCollection shapeCollection, double cursor)
drawTickLabel
in class AbstractAxis
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
plotArea
- Rectangle2D 图表的plot区域.
axisArea
- Rectangle2D 坐标轴区域.
edge
- RectangleEdge 坐标轴的位置.
shapeCollection
- AxisShapeCollection 坐标轴图形集合.
cursor
- 光标的位置.
protected double drawTickLabelReally(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D plotArea, java.awt.geom.Rectangle2D axisArea, RectangleEdge edge, AxisShapeCollection shapeCollection, double cursor, java.lang.String[] labels)
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
plotArea
- Rectangle2D 图表的plot区域.
axisArea
- Rectangle2D 坐标轴区域.
edge
- RectangleEdge 坐标轴的位置.
shapeCollection
- AxisShapeCollection 坐标轴图形集合.
cursor
- 光标的位置.
labels
- String[] 标签数组.
protected java.lang.String[] getTickLabels(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D axisArea, RectangleEdge edge)
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
axisArea
- Rectangle2D 坐标轴矩形区域 (不可为null).
edge
- RectangleEdge 坐标轴的位置 (不可为null).
public void drawValueLine(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, RectangleEdge edge, RenderShapeCollection shapeCollection)
drawValueLine
in class AbstractValueAxis
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
dataArea
- Rectangle2D 图表的data域(数据区) (不可为null).
edge
- RectangleEdge 坐标轴的位置 (不可为null).
shapeCollection
- RenderShapeCollection render图形集合 (不可为null).
protected IChartShape createValueLineShape(double x1, double y1, double x2, double y2)
x1
- double 第一个点的x坐标.
y1
- double 第一个点的y坐标.
x2
- double 第二个点的x坐标.
y2
- double 第二个点的y坐标.
protected double getLabelMaxDrawWidth(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D plotArea, RectangleEdge edge, java.lang.String[] formatedLabels)
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
plotArea
- Rectangle2D 图表的plot区域.
edge
- RectangleEdge 坐标轴的位置.
formatedLabels
- String[] 格式化后的坐标轴刻度值.
protected java.lang.String[] getFormatedTickLabels(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D maxAxisArea, RectangleEdge edge)
getFormatedTickLabels
in class AbstractAxis
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
maxAxisArea
- Rectangle2D 坐标轴的最大区域,肯定小于plotArea (不可为null).
edge
- RectangleEdge 坐标轴的位置 (不可为null).
protected void calculateLabels(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D axisArea, RectangleEdge edge)
g2
- Graphics2DaxisArea
- Rectangle2Dedge
- RectangleEdgeprotected java.lang.String[] getNumberLabels(int labelCount)
labelCount
- int 标签的个数.
public NumberRange getDatasetRange()
getDatasetRange
in class AbstractValueAxis
public NumberRange getTickRange()
protected IChartShape createChartShape(java.awt.geom.Rectangle2D tickLabelDrawRect, java.lang.String tickLabel)
tickLabelDrawRect
- Rectangle2D 刻度值的包围矩形.
tickLabel
- String 刻度值.
public void drawGridLine(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, RectangleEdge axisEdge, RenderShapeCollection shapeCollection, java.awt.Stroke stroke, java.awt.Paint paint)
drawGridLine
in class AbstractAxis
g2
- Graphics2D 图形设备(打印机或屏幕) (不可为null).
dataArea
- Rectangle2D 图表的data区域(数据区) (不可为null).
axisEdge
- RectangleEdge 坐标轴的位置 (不可为null).
shapeCollection
- RenderShapeCollection 坐标轴图形集合 (不可为null).
stroke
- Stroke 网格线stroke (不可为null).
paint
- Paint 网格线paint (不可为null).
public double valueToJava2D(java.awt.geom.Rectangle2D dataArea, RectangleEdge edge, double value, boolean forceInDataArea)
valueToJava2D
in class AbstractValueAxis
dataArea
- Rectangle2D 图表的data域(数据区) (不可为null).
edge
- RectangleEdge 坐标轴的位置 (不可为null).
value
- double 数据值.
forceInDataArea
- boolean 是否强制在dataArea区域之内.
public double valueToJava2D(java.awt.geom.Rectangle2D dataArea, RectangleEdge edge, double value, boolean forceInDataArea, boolean expandAxisRange)
valueToJava2D
in class AbstractValueAxis
dataArea
- Rectangle2D 图表的data域(数据区) (不可为null).
edge
- RectangleEdge 坐标轴的位置 (不可为null).
value
- double 数据值.
forceInDataArea
- boolean 是否强制在dataArea区域之内.
expandAxisRange
- boolean 是否扩展坐标轴的范围.
protected boolean isRangeIncludeZero()
protected boolean isOffsetValueLine()
protected boolean isLogTickUnit()
protected double convertNumberTick(java.lang.String tick)
tick
- String
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class AbstractValueAxis
java.lang.CloneNotSupportedException
- if some component of the axis does
not support cloning.public boolean equals(java.lang.Object obj)
equals
in class AbstractValueAxis
obj
- 要测试的对象 (可为null).
public int hashCode()
hashCode
in class AbstractValueAxis
public java.lang.String toString()
toString
in class AbstractValueAxis
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |