com.ijchart.xychart.render.xy
Class XYDifferenceRender

java.lang.Object
  extended by com.ijchart.xychart.render.AbstractRender
      extended by com.ijchart.xychart.render.AbstractWithAxisRender
          extended by com.ijchart.xychart.render.xy.AbstractXYRender
              extended by com.ijchart.xychart.render.xy.AbstractXYAreaRender
                  extended by com.ijchart.xychart.render.xy.XYDifferenceRender
All Implemented Interfaces:
IDatasetChangeListener, IRender, IRenderWithAxis, java.io.Serializable, java.lang.Cloneable, java.util.EventListener

public class XYDifferenceRender
extends AbstractXYAreaRender
implements java.lang.Cloneable, java.io.Serializable

Title: IJChart

Description: a chart library for the Java(tm) platform.

绘制两行数据之间的差异图.

Copyright: Copyright (c) 2013

Company:

Version:
1.0
Author:
zhang feng min,shanghai china. Contract me by email.
See Also:
Serialized Form

Field Summary
static java.awt.Paint DEFAULT_NEGATIVE_PAINT
          差值为负值时的缺省颜色,即(y(0) < y(1)).
static java.awt.Paint DEFAULT_POSITIVE_PAINT
          差值为正值时的缺省颜色,即(y(0) > y(1)).
static boolean DEFAULT_SHAPES_VISIBLE
          缺省是否显示图形.
 
Fields inherited from class com.ijchart.xychart.render.xy.AbstractXYAreaRender
uniqueXValues
 
Fields inherited from class com.ijchart.xychart.render.AbstractRender
borderPaints, borderStrokes, DEFAULT_AUTO_SELECT_BORDER_PAINT, DEFAULT_AUTO_SELECT_BORDER_STROKE, DEFAULT_AUTO_SELECT_FILL_PAINT, DEFAULT_BACKGROUND_IMAGE_ALIGNMENT, DEFAULT_BACKGROUND_PAINT, DEFAULT_BASE_BORDER_PAINT, DEFAULT_BASE_BORDER_STROKE, DEFAULT_BASE_ITEM_FILL, DEFAULT_BASE_ITEM_FILL_PAINT, DEFAULT_BASE_ITEM_FILL_PAINT_TRANSFORMER, DEFAULT_BASE_ITEM_LABEL_FONT, DEFAULT_BASE_ITEM_LABEL_HORIZONTAL_ALIGNMENT, DEFAULT_BASE_ITEM_LABEL_PAINT, DEFAULT_BASE_ITEM_LABEL_VERTICAL_ALIGNMENT, DEFAULT_BASE_ITEM_LABEL_VISIBLE, DEFAULT_BORDER_PAINT, DEFAULT_BORDER_STROKE, DEFAULT_DRAW_BORDER, DEFAULT_DRAWINT_SUPPLIER, DEFAULT_GENERATOR_TOOLTIP, DEFAULT_GENERATOR_URL, DEFAULT_LABEL_GENERATOR, DEFAULT_RENDER_AREA_BORDER_VISIBLE, DEFAULT_TOOLTIP_GENERATOR, fillPaints
 
Constructor Summary
XYDifferenceRender(IMatrixDataset dataset)
          构造器.
XYDifferenceRender(IMatrixDataset dataset, java.awt.Paint positivePaint, java.awt.Paint negativePaint)
          构造器.
 
Method Summary
 java.lang.Object clone()
          返回克隆的对象.
protected  IChartShape createItemShapeOnly(java.awt.geom.Rectangle2D rect, java.lang.String text, java.lang.Object appendParam)
          只创建图形,不设置图形的属性.
 void drawAllItems(AbstractValueAxis xAxis, RectangleEdge xAxisEdge, AbstractValueAxis yAxis, RectangleEdge yAxisEdge, java.awt.geom.Rectangle2D dataArea, ChartOrientation orientation, RenderShapeCollection renderShapes, float alpha)
          绘制所有的图形.
 boolean equals(java.lang.Object obj)
          测试两个对象是否相等.
protected  IChartShape[] getLegendItemShapes(int legendCount)
          返回每个图例的图形.
 LegendType getLegendType()
          返回图例类型.
 java.awt.Paint getNegativePaint()
          返回差值为负值时的颜色,即(y(0) < y(1)).
 java.awt.Paint getPositivePaint()
          返回差值为正值时的颜色,即(y(0) > y(1)).
 int hashCode()
          计算对象的hashcode值.
 boolean isShapesVisible()
          返回是否显示图形.
 void setNegativePaint(java.awt.Paint paint)
          设置差值为负值时的颜色,即(y(0) < y(1)),并向所有监听器发送 RenderChangeEvent事件.
 void setPositivePaint(java.awt.Paint paint)
          设置差值为正值时的颜色,即(y(0) > y(1)),并向所有监听器发送 RenderChangeEvent事件.
 void setShapesVisible(boolean flag)
          设置是否显示图形,并向所有监听器发送 RenderChangeEvent事件.
 java.lang.String toString()
          覆盖toString方法.
 
Methods inherited from class com.ijchart.xychart.render.xy.AbstractXYAreaRender
calculateUniqueXValues, checkRowDataDuplicate, processDataset
 
Methods inherited from class com.ijchart.xychart.render.xy.AbstractXYRender
addAnnotation, drawAllAnnotation, getAllAnnotations, removeAllAnnotation
 
Methods inherited from class com.ijchart.xychart.render.AbstractWithAxisRender
createItemShape, createValueMarkerShape, drawIntervalValueMarker, drawValueMarker, getValueAxisOffsetType
 
Methods inherited from class com.ijchart.xychart.render.AbstractRender
add3DShapes, addChangeListener, calculateLegendItemShapes, datasetChanged, drawBackground, drawBackgroundImage, drawDrawAreaBorder, fireRenderChanged, getBackgroundImage, getBackgroundImageAlignment, getBackgroundImageAlpha, getBackgroundPaint, getBaseItemBorderPaint, getBaseItemBorderStroke, getBaseItemFillPaint, getBaseItemFillPaintTransformer, getBaseItemLabelDirection, getBaseItemLabelFont, getBaseItemLabelHorizontalAlignment, getBaseItemLabelPaint, getBaseItemLabelPosition, getBaseItemLabelVerticalAlignment, getBaseItemLabelVisible, getBorderPaints, getBorderStrokes, getChartArea, getColumnItemBorderPaint, getColumnItemBorderStroke, getColumnItemFillPaint, getColumnItemFillPaintTransformer, getColumnItemLabelDirection, getColumnItemLabelFont, getColumnItemLabelHorizontalAlignment, getColumnItemLabelPaint, getColumnItemLabelPosition, getColumnItemLabelVerticalAlignment, getDataset, getDrawingSupplier, getFillPaints, getItemBorderPaint, getItemBorderStroke, getItemFillPaint, getItemFillPaintHelper, getItemFillPaintTransformer, getItemLabelDirection, getItemLabelFont, getItemLabelHorizontalAlignment, getItemLabelPaint, getItemLabelPosition, getItemLabelVerticalAlignment, getLabelGenerator, getLegendItemCount, getLegendItemLabels, getLegendItemLabelsByColumn, getLegendItemLabelsByRow, getLegendPositon, getNegativeItemLabelHorizontalAlignment, getNegativeItemLabelVerticalAlignment, getPositiveItemLabelHorizontalAlignment, getPositiveItemLabelVerticalAlignment, getRenderAreaBorderPaint, getRenderAreaBorderStroke, getRowItemBorderPaint, getRowItemBorderStroke, getRowItemFillPaint, getRowItemFillPaintTransformer, getRowItemLabelDirection, getRowItemLabelFont, getRowItemLabelHorizontalAlignment, getRowItemLabelPaint, getRowItemLabelPosition, getRowItemLabelVerticalAlignment, getToolTipGenerator, hasListener, isAutoSelectBorderPaint, isAutoSelectBorderStroke, isAutoSelectFillPaint, isBaseItemDrawBorder, isBaseItemFill, isColumnItemDrawBorder, isColumnItemFill, isColumnItemLabelVisible, isColumnItemVisible, isGeneratorTooltip, isGeneratorUrl, isItemDrawBorder, isItemFill, isItemLabelVisible, isItemVisible, isRenderAreaBorderVisible, isRowItemDrawBorder, isRowItemFill, isRowItemLabelVisible, isRowItemVisible, notifyListeners, removeAllChangeListener, removeChangeListener, setAutoSelectBorderPaint, setAutoSelectBorderStroke, setAutoSelectFillPaint, setBackgroundImage, setBackgroundImageAlignment, setBackgroundImageAlpha, setBackgroundPaint, setBaseItemBorderPaint, setBaseItemBorderStroke, setBaseItemDrawBorder, setBaseItemFill, setBaseItemFillPaint, setBaseItemFillPaintTransformer, setBaseItemLabelDirection, setBaseItemLabelFont, setBaseItemLabelHorizontalAlignment, setBaseItemLabelPaint, setBaseItemLabelPosition, setBaseItemLabelVerticalAlignment, setBaseItemLabelVisible, setChartArea, setColumnItemBorderPaint, setColumnItemBorderStroke, setColumnItemDrawBorder, setColumnItemFill, setColumnItemFillPaint, setColumnItemFillPaintTransformer, setColumnItemLabelDirection, setColumnItemLabelFont, setColumnItemLabelHorizontalAlignment, setColumnItemLabelPaint, setColumnItemLabelPosition, setColumnItemLabelVerticalAlignment, setColumnItemLabelVisible, setColumnItemVisible, setCustomLegendType, setDataset, setDrawingSupplier, setDrawingSupplier, setGeneratorTooltip, setGeneratorUrl, setItemBorderPaint, setItemBorderStroke, setItemDrawBorder, setItemFill, setItemFillPaint, setItemFillPaintTransformer, setItemLabelDirection, setItemLabelFont, setItemLabelHorizontalAlignment, setItemLabelPaint, setItemLabelPosition, setItemLabelVerticalAlignment, setItemLabelVisible, setItemVisible, setLabelGenerator, setLegendPositon, setNegativeItemLabelHorizontalAlignment, setNegativeItemLabelVerticalAlignment, setPositiveItemLabelHorizontalAlignment, setPositiveItemLabelVerticalAlignment, setRenderAreaBorderPaint, setRenderAreaBorderStroke, setRenderAreaBorderVisible, setRowItemBorderPaint, setRowItemBorderStroke, setRowItemDrawBorder, setRowItemFill, setRowItemFillPaint, setRowItemFillPaintTransformer, setRowItemLabelDirection, setRowItemLabelFont, setRowItemLabelHorizontalAlignment, setRowItemLabelPaint, setRowItemLabelPosition, setRowItemLabelVerticalAlignment, setRowItemLabelVisible, setRowItemVisible, setToolTipGenerator
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.ijchart.xychart.render.IRender
addChangeListener, drawBackground, drawBackgroundImage, drawDrawAreaBorder, getBaseItemBorderPaint, getBaseItemBorderStroke, getBaseItemFillPaint, getBaseItemFillPaintTransformer, getBaseItemLabelFont, getBaseItemLabelHorizontalAlignment, getBaseItemLabelPaint, getBaseItemLabelPosition, getBaseItemLabelVerticalAlignment, getBaseItemLabelVisible, getColumnItemBorderPaint, getColumnItemBorderStroke, getColumnItemFillPaint, getColumnItemFillPaintTransformer, getColumnItemLabelFont, getColumnItemLabelHorizontalAlignment, getColumnItemLabelPaint, getColumnItemLabelPosition, getColumnItemLabelVerticalAlignment, getItemBorderPaint, getItemBorderStroke, getItemFillPaint, getItemFillPaintTransformer, getItemLabelFont, getItemLabelHorizontalAlignment, getItemLabelPaint, getItemLabelPosition, getItemLabelVerticalAlignment, getLabelGenerator, getNegativeItemLabelHorizontalAlignment, getNegativeItemLabelVerticalAlignment, getPositiveItemLabelHorizontalAlignment, getPositiveItemLabelVerticalAlignment, getRowItemBorderPaint, getRowItemBorderStroke, getRowItemFillPaint, getRowItemFillPaintTransformer, getRowItemLabelFont, getRowItemLabelHorizontalAlignment, getRowItemLabelPaint, getRowItemLabelPosition, getRowItemLabelVerticalAlignment, getToolTipGenerator, isBaseItemDrawBorder, isBaseItemFill, isColumnItemDrawBorder, isColumnItemFill, isColumnItemLabelVisible, isColumnItemVisible, isItemDrawBorder, isItemFill, isItemLabelVisible, isItemVisible, isRowItemDrawBorder, isRowItemFill, isRowItemLabelVisible, isRowItemVisible, removeAllChangeListener, removeChangeListener, setBaseItemBorderPaint, setBaseItemBorderStroke, setBaseItemDrawBorder, setBaseItemFill, setBaseItemFillPaint, setBaseItemFillPaintTransformer, setBaseItemLabelFont, setBaseItemLabelHorizontalAlignment, setBaseItemLabelPaint, setBaseItemLabelPosition, setBaseItemLabelVerticalAlignment, setBaseItemLabelVisible, setColumnItemBorderPaint, setColumnItemBorderStroke, setColumnItemDrawBorder, setColumnItemFill, setColumnItemFillPaint, setColumnItemFillPaintTransformer, setColumnItemLabelFont, setColumnItemLabelHorizontalAlignment, setColumnItemLabelPaint, setColumnItemLabelPosition, setColumnItemLabelVerticalAlignment, setColumnItemLabelVisible, setColumnItemVisible, setCustomLegendType, setItemBorderPaint, setItemBorderStroke, setItemDrawBorder, setItemFill, setItemFillPaint, setItemFillPaintTransformer, setItemLabelFont, setItemLabelHorizontalAlignment, setItemLabelPaint, setItemLabelPosition, setItemLabelVerticalAlignment, setItemLabelVisible, setItemVisible, setLabelGenerator, setNegativeItemLabelHorizontalAlignment, setNegativeItemLabelVerticalAlignment, setPositiveItemLabelHorizontalAlignment, setPositiveItemLabelVerticalAlignment, setRowItemBorderPaint, setRowItemBorderStroke, setRowItemDrawBorder, setRowItemFill, setRowItemFillPaint, setRowItemFillPaintTransformer, setRowItemLabelFont, setRowItemLabelHorizontalAlignment, setRowItemLabelPaint, setRowItemLabelPosition, setRowItemLabelVerticalAlignment, setRowItemLabelVisible, setRowItemVisible, setToolTipGenerator
 

Field Detail

DEFAULT_POSITIVE_PAINT

public static final java.awt.Paint DEFAULT_POSITIVE_PAINT
差值为正值时的缺省颜色,即(y(0) > y(1)).


DEFAULT_NEGATIVE_PAINT

public static final java.awt.Paint DEFAULT_NEGATIVE_PAINT
差值为负值时的缺省颜色,即(y(0) < y(1)).


DEFAULT_SHAPES_VISIBLE

public static final boolean DEFAULT_SHAPES_VISIBLE
缺省是否显示图形.

See Also:
Constant Field Values
Constructor Detail

XYDifferenceRender

public XYDifferenceRender(IMatrixDataset dataset)
构造器.

Parameters:
dataset - IMatrixDataset 数据集 (不可为null).

XYDifferenceRender

public XYDifferenceRender(IMatrixDataset dataset,
                          java.awt.Paint positivePaint,
                          java.awt.Paint negativePaint)
构造器.

Parameters:
dataset - IMatrixDataset 数据集 (不可为null).
positivePaint - Paint 差值为正值时的颜色 (不可为null).
negativePaint - Paint 差值为负值时的颜色 (不可为null).
Method Detail

getPositivePaint

public java.awt.Paint getPositivePaint()
返回差值为正值时的颜色,即(y(0) > y(1)).

Returns:
Paint paint对象 (不为null).

setPositivePaint

public void setPositivePaint(java.awt.Paint paint)
设置差值为正值时的颜色,即(y(0) > y(1)),并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint paint对象 (不可为null).

getNegativePaint

public java.awt.Paint getNegativePaint()
返回差值为负值时的颜色,即(y(0) < y(1)).

Returns:
Paint paint对象 (不为null).

setNegativePaint

public void setNegativePaint(java.awt.Paint paint)
设置差值为负值时的颜色,即(y(0) < y(1)),并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint paint对象 (不可为null).

isShapesVisible

public boolean isShapesVisible()
返回是否显示图形.

Returns:
boolean 布尔值.

setShapesVisible

public void setShapesVisible(boolean flag)
设置是否显示图形,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

drawAllItems

public void drawAllItems(AbstractValueAxis xAxis,
                         RectangleEdge xAxisEdge,
                         AbstractValueAxis yAxis,
                         RectangleEdge yAxisEdge,
                         java.awt.geom.Rectangle2D dataArea,
                         ChartOrientation orientation,
                         RenderShapeCollection renderShapes,
                         float alpha)
绘制所有的图形.

Specified by:
drawAllItems in class AbstractXYRender
Parameters:
xAxis - AbstractValueAxis x数值坐标轴 (不可为null).
xAxisEdge - RectangleEdge x坐标轴位置(不可为null).
yAxis - AbstractValueAxis y数值坐标轴 (不可为null).
yAxisEdge - RectangleEdge y坐标轴位置 (不可为null).
dataArea - Rectangle2D 数据区域 (不可为null).
orientation - ChartOrientation 图表的方向 (不可为null).
renderShapes - RenderShapeCollection render图形集合 (不可为null).
alpha - float alpha值,须属于闭区间[0.0,1.0].

getLegendType

public LegendType getLegendType()
返回图例类型.

Specified by:
getLegendType in interface IRender
Overrides:
getLegendType in class AbstractXYAreaRender
Returns:
LegendType 图例类型.

getLegendItemShapes

protected IChartShape[] getLegendItemShapes(int legendCount)
返回每个图例的图形.

Overrides:
getLegendItemShapes in class AbstractRender
Parameters:
legendCount - int 图例的个数.
Returns:
IChartShape[] 图形数组.

createItemShapeOnly

protected IChartShape createItemShapeOnly(java.awt.geom.Rectangle2D rect,
                                          java.lang.String text,
                                          java.lang.Object appendParam)
只创建图形,不设置图形的属性.

Overrides:
createItemShapeOnly in class AbstractXYAreaRender
Parameters:
rect - Rectangle2D 柱形图的矩形 (不可为null).
text - String 要显示的文字 (可为null).
appendParam - Object 附加的参数,用于传递额外的对象 (可为null).
Returns:
IChartShape 图形.

equals

public boolean equals(java.lang.Object obj)
测试两个对象是否相等.

Overrides:
equals in class AbstractXYAreaRender
Parameters:
obj - 要比较的对象
Returns:
相等返回true,否则返回false.

hashCode

public int hashCode()
计算对象的hashcode值.

Overrides:
hashCode in class AbstractXYAreaRender
Returns:
int 对象的hashcode值.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
返回克隆的对象.

Overrides:
clone in class AbstractXYAreaRender
Returns:
object a clone of this instance.
Throws:
java.lang.CloneNotSupportedException - if the object's class does not support the Cloneable interface. Subclasses that override the clone method can also throw this exception to indicate that an instance cannot be cloned.

toString

public java.lang.String toString()
覆盖toString方法.

Overrides:
toString in class AbstractXYAreaRender
Returns:
a string representation of the object.