mx.charts.chartClasses

# DataTransform - AS3 Flex

Package | mx.charts.chartClasses
Class | public class DataTransform
Inheritance | DataTransform EventDispatcher Object
Subclasses | CartesianTransform, PolarTransform

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

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.

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | axes : Object [read-only] The set of axes associated with this transform. | DataTransform
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | elements : Array The elements that are associated with this transform. | DataTransform

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | DataTransform() Constructor. | DataTransform
|  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event. | EventDispatcher
|  | dataChanged():void Informs the DataTransform that some of the underlying data being represented on the chart has changed. | DataTransform
|  | describeData(dimension:String, requiredFields:uint):Array Collects important displayed values for all elements associated with this data transform. | DataTransform
|  | dispatchEvent(event:Event):Boolean Dispatches an event into the event flow. | EventDispatcher
|  | getAxis(dimension:String):IAxis Retrieves the axis instance responsible for transforming the data dimension specified by the dimension parameter. | DataTransform
|  | hasEventListener(type:String):Boolean Checks whether the EventDispatcher object has any listeners registered for a specific type of event. | EventDispatcher
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | invertTransform(... values):Array Transforms x and y coordinates relative to the DataTransform coordinate system into a two-dimensional value in data space. | DataTransform
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void Removes a listener from the EventDispatcher object. | EventDispatcher
|  | setAxis(dimension:String, v:IAxis):void Assigns an axis instance to a particular dimension of the transform. | DataTransform
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String Returns the string representation of the specified object. | Object
|  | transformCache(cache:Array, xField:String, xConvertedField:String, yField:String, yConvertedField:String):void Maps a set of numeric values representing data to screen coordinates. | DataTransform
|  | valueOf():Object Returns the primitive value of the specified object. | Object
|  | willTrigger(type:String):Boolean Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. | EventDispatcher

Events
Click for more information on events
Hide Inherited Events
Show Inherited Events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | activate | [broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher
|  | deactivate | [broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher
|  | transformChange | 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.

Returns

| `Array` — A Array of BoundedValue objects.

### getAxis

()
method

`public function getAxis(dimension:String):IAxis`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

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.

Returns

| `IAxis` — The axis instance.

Related API Elements

mx.charts.LinearAxis

### invertTransform

()
method

`public function invertTransform(... values):Array`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Transforms x and y coordinates relative to the DataTransform coordinate system into a two-dimensional value in data space.

Parameters

| `... values` — The x and y positions (in that order).

Returns

| `Array` — An Array containing the transformed values.

### setAxis

()
method

`public function setAxis(dimension:String, v:IAxis):void`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

Assigns an axis instance to a particular dimension of the transform. Axis objects are assigned by the enclosing chart object.

Parameters

| `dimension:String` — The dimension of the transform.
| `v:IAxis` — The target axis instance.

### transformCache

()
method

`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.

Event Detail

### transformChange

Event

Event Object Type: `mx.events.FlexEvent`
property FlexEvent.type = `mx.events.FlexEvent.TRANSFORM_CHANGE`

Language Version: | ActionScript 3.0

Product Version: | Flex 3

Runtime Versions: | Flash Player 9, AIR 1.1

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.

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00