The DataTransform object represents a portion of a chart
that contains glyphs and can transform values
to screen coordinates and vice versa.
Each DataTransform object has a horizontal axis, a vertical axis,
and a set of glyphs (background, data, and overlay) to render.
In theory, a chart can contain multiple overlaid DataTransform objects.
This allows you to display a chart with multiple data sets
rendered in the same area but with different ranges.
For example, you might want to show monthly revenues
compared to the number of units sold.
If revenue was typically in millions while units was typically
in the thousands, it would be difficult to render these effectively
along the same range.
Overlaying them in different DataTransform objects allows
the end user to compare trends in the values
when they are rendered with different ranges.
Charts can only contain one set of DataTransform.
Most of the time, you will use the ChartBase object,
which hides the existance of the DataTransform object
between the chart and its contained glyphs and axis objects.
If you create your own ChartElement objects, you must understand
the methods of the DataTransform class to correctly implement their element.
Dispatched when the transformation from data space to screen space has changed, typically either because the axes that make up the transformation have changed in some way, or the data transform itself has size.
DataTransform
Property Detail
axes
property
axes:Object [read-only]
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
The set of axes associated with this transform.
Implementation public function get axes():Object
elements
property
elements:Array
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
The elements that are associated with this transform.
This Array includes background, series, and overlay elements
associated with the transform.
This value is assigned by the enclosing chart object.
Implementation public function get elements():Array public function set elements(value:Array):void
Constructor Detail
DataTransform
()
Constructor
public function DataTransform()
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Constructor.
Method Detail
dataChanged
()
method
public function dataChanged():void
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Informs the DataTransform that some of the underlying data
being represented on the chart has changed.
The DataTransform generally has no knowledge of the source
of the underlying data being represented by the chart,
so glyphs should call this when their data changes
so that the DataTransform can recalculate range scales
based on their data.
This does not invalidate the DataTransform,
because there is no guarantee the data has changed.
The axis objects (or range objects) must trigger an invalidate event.
describeData
()
method
public function describeData(dimension:String, requiredFields:uint):Array
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Collects important displayed values for all elements
associated with this data transform.
Axis instances call this method to collect the values
they need to consider when auto-generating appropriate ranges.
This method returns an Array of BoundedValue objects.
To collect important values for the horizontal axis
of a CartesianTransform, pass 0.
To collect values for the vertical axis, pass 1.
Parameters
dimension:String — The dimension to collect values for.
requiredFields:uint — Defines the data that are required
by this transform.
Retrieves the axis instance responsible for transforming
the data dimension specified by the dimension parameter.
If no axis has been previously assigned, a default axis is created.
The default axis for all dimensions is a LinearAxis
with the autoAdjust property set to false.
Parameters
dimension:String — The dimension whose axis is responsible
for transforming the data.
public function transformCache(cache:Array, xField:String, xConvertedField:String, yField:String, yConvertedField:String):void
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Maps a set of numeric values representing data to screen coordinates.
This method assumes the values are all numbers,
so any non-numeric values must have been previously converted
with the mapCache() method.
Parameters
cache:Array — An array of objects containing the data values
in their fields. This is also where this function
will store the converted numeric values.
xField:String — The field where the data values for the x axis
can be found.
xConvertedField:String — The field where the mapped x screen coordinate
will be stored.
yField:String — The field where the data values for the y axis
can be found.
yConvertedField:String — The field where the mapped y screen coordinate
will be stored.
Dispatched when the transformation from data space to screen space
has changed, typically either because the axes that make up
the transformation have changed in some way,
or the data transform itself has size.
The FlexEvent.TRANSFORM_CHANGE constant defines the value of the
type property of the event object for a transformChange event.
The properties of the event object have the following values:
Property
Value
bubbles
false
cancelable
false
currentTarget
The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget.
target
The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event.