패키지 | mx.charts |
클래스 | public class CategoryAxis |
상속 | CategoryAxis AxisBase EventDispatcher Object |
구현 | IAxis |
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
You are not required to explicitly set the dataProvider
property
on a CategoryAxis. A CategoryAxis used in a chart inherits its
dataProvider
property from the containing chart.
While you can use the same data provider to provide data to the chart and categories to the CategoryAxis, a CategoryAxis can optimize rendering if its data provider is relatively static. If possible, ensure that the categories are relatively static and that changing data is stored in separate data providers.
The dataProvider
property can accept
either an array of strings or an array of records (Objects)
with a property that specifies the category name.
If you specify a categoryField
property,
the CategoryAxis assumes that the data provider is an array of Objects.
If the value of the categoryField
property is null
,
the CategoryAxis assumes that the data provider is an array of Strings.
The <mx:CategoryAxis>
tag inherits all the properties
of its parent classes and adds the following properties:
<mx:CategoryAxis Properties categoryField="null" dataFunction="No default" dataProvider="No default" labelFunction="No default" padding="Default depends on chart type" ticksBetweenLabels="true" />
기타 예제
속성 | 정의 주체 | ||
---|---|---|---|
baseline : Number [읽기 전용]
The baseline position for the axis. | CategoryAxis | ||
categoryField : String
Specifies the field of the data provider
containing the text for the labels. | CategoryAxis | ||
chartDataProvider : Object [쓰기 전용]
The data provider assigned to the enclosing chart. | AxisBase | ||
constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다. | Object | ||
dataFunction : Function
Specifies a method that returns the value that should be used as
categoryValue for current item.If this property is set, the return
value of the custom data function takes precedence over
categoryField
The custom dataFunction has the following signature:
function_name (axis:CategoryAxis, item:Object):Object { ... | CategoryAxis | ||
dataProvider : Object
Specifies the data source containing the label names. | CategoryAxis | ||
displayName : String
The name of the axis. | AxisBase | ||
labelFunction : Function
Specifies a function that defines the labels that are generated
for each item in the CategoryAxis's dataProvider. | CategoryAxis | ||
padding : Number
Specifies the padding added to either side of the axis
when rendering data on the screen. | CategoryAxis | ||
ticksBetweenLabels : Boolean
Specifies the location of major tick marks on the axis,
relative to the category labels. | CategoryAxis | ||
title : String
The text for the title displayed along the axis. | AxisBase | ||
unitSize : Number [읽기 전용]
The size of one unit of data as represented by this axis. | AxisBase |
메서드 | 정의 주체 | ||
---|---|---|---|
Constructor. | CategoryAxis | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
리스너에서 이벤트 알림을 받을 수 있도록 EventDispatcher 객체에 이벤트 리스너 객체를 등록합니다. | EventDispatcher | ||
Triggers events that inform the range object
when the chart data has changed. | AxisBase | ||
이벤트를 이벤트 흐름으로 전달합니다. | EventDispatcher | ||
Filters a set of values of arbitrary type
to a set of numbers that can be mapped. | CategoryAxis | ||
Formats values for display in DataTips. | CategoryAxis | ||
Determines the range to estimate what the axis labels should be. | CategoryAxis | ||
Gets the labels text that is rendered. | CategoryAxis | ||
EventDispatcher 객체에 특정 유형의 이벤트에 대한 리스너가 등록되어 있는지 여부를 확인합니다. | EventDispatcher | ||
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다. | Object | ||
Maps a position along the axis back to a numeric data value. | CategoryAxis | ||
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다. | Object | ||
Converts a set of values of arbitrary type
to a set of numbers that can be transformed into screen coordinates. | CategoryAxis | ||
Determines how the axis handles overlapping labels. | CategoryAxis | ||
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다. | Object | ||
Invoked when an AxisRenderer is unable to cleanly render
the labels without overlap, and would like the Axis object
to reduce the set of labels. | CategoryAxis | ||
Each DataTransform that makes use of an axis
registers itself with that axis. | AxisBase | ||
EventDispatcher 객체에서 리스너를 제거합니다. | EventDispatcher | ||
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다. | Object | ||
로캘별 규칙에 따라 서식이 지정된 이 객체의 문자열 표현을 반환합니다. | Object | ||
지정된 객체의 문자열 표현을 반환합니다. | Object | ||
Maps a set of values from data space to screen space. | CategoryAxis | ||
Each DataTransform that makes use of an axis
registers itself with that axis. | AxisBase | ||
Updates the chart. | CategoryAxis | ||
지정된 객체의 프리미티브 값을 반환합니다. | Object | ||
이 EventDispatcher 객체 또는 조상 객체에 지정한 이벤트 유형에 대한 이벤트 리스너가 등록되어 있는지 여부를 확인합니다. | EventDispatcher |
baseline | 속성 |
baseline:Number
[읽기 전용] 언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
The baseline position for the axis. Some series, such as ColumnSeries or AreaSeries, use this value to define the base of a filled region when no minimum value is specified.
구현
public function get baseline():Number
categoryField | 속성 |
categoryField:String
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Specifies the field of the data provider
containing the text for the labels.
If this property is null
, CategoryAxis assumes
that the dataProvider contains an array of Strings.
기본값: null.
구현
public function get categoryField():String
public function set categoryField(value:String):void
dataFunction | 속성 |
dataFunction:Function
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Specifies a method that returns the value that should be used as
categoryValue for current item.If this property is set, the return
value of the custom data function takes precedence over
categoryField
The custom dataFunction
has the following signature:
function_name (axis:CategoryAxis, item:Object):Object { ... }
axis
is the current axis that uses this dataFunction
item
is the item in the dataProvider that is considered.
This function returns an object.
An example usage of a customized dataFunction
is to return a value
from a dataProvider that has items with nested fields
구현
public function get dataFunction():Function
public function set dataFunction(value:Function):void
예제
예제 사용 방법
public function myFunction(axis:CategoryAxis,item:Object):Object { return(item.Country.State); }
dataProvider | 속성 |
dataProvider:Object
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Specifies the data source containing the label names.
The dataProvider
can be an Array of Strings, an Array of Objects,
or any object that implements the IList or ICollectionView interface.
If the dataProvider
is an Array of Strings,
ensure that the categoryField
property
is set to null
.
If the dataProvider is an Array of Objects,
set the categoryField
property
to the name of the field that contains the label text.
구현
public function get dataProvider():Object
public function set dataProvider(value:Object):void
labelFunction | 속성 |
labelFunction:Function
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Specifies a function that defines the labels that are generated
for each item in the CategoryAxis's dataProvider
.
If no labelFunction
is provided,
the axis labels default to the value of the category itself.
The labelFunction
method for a CategoryAxis
has the following signature:
function function_name(categoryValue:Object, previousCategoryValue:Object, axis:CategoryAxis, categoryItem:Object):String { ... }
Where:
categoryValue
is the value of the category to be represented.previousCategoryValue
is the value of the previous category on the axis.axis
is the CategoryAxis being rendered.categoryItem
is the item from thedataProvider
that is being represented.
Flex displays the returned String as the axis label.
If the categoryField
property is not set, the value
will be the same as the categoryValue
property.
구현
public function get labelFunction():Function
public function set labelFunction(value:Function):void
padding | 속성 |
padding:Number
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Specifies the padding added to either side of the axis when rendering data on the screen. Set to 0 to map the first category to the very beginning of the axis and the last category to the end. Set to 0.5 to leave padding of half the width of a category on the axis between the beginning of the axis and the first category and between the last category and the end of the axis.
This is useful for chart types that render beyond the bounds of the category, such as columns and bars. However, when used as the horizontalAxis in a LineChart or AreaChart, it is reset to 0.
기본값: 0.5.
구현
public function get padding():Number
public function set padding(value:Number):void
ticksBetweenLabels | 속성 |
ticksBetweenLabels:Boolean
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Specifies the location of major tick marks on the axis,
relative to the category labels.
If true
, tick marks (and any associated grid lines)
appear between the categories.
If false
, tick marks appear in the middle of the category,
aligned with the label.
구현
public function get ticksBetweenLabels():Boolean
public function set ticksBetweenLabels(value:Boolean):void
CategoryAxis | () | 생성자 |
public function CategoryAxis()
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Constructor.
filterCache | () | 메서드 |
public function filterCache(cache:Array, field:String, filteredField:String):void
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Filters a set of values of arbitrary type to a set of numbers that can be mapped.
매개 변수
cache:Array — An Array of objects where converted values
are read from and stored.
| |
field:String — The field of the objects in the cache Array
containing the pre-filtered values.
| |
filteredField:String — The field of the objects in the cache Array
where filtered values should be stored.
|
formatForScreen | () | 메서드 |
getLabelEstimate | () | 메서드 |
public function getLabelEstimate():AxisLabelSet
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Determines the range to estimate what the axis labels should be.
The axis almost immediately calls the getLabels()
method
to get the real values.
The axis uses the estimated values to adjust chart margins,
so any difference between the estimated labels and actual labels
(returned from the getLabels()
method) results in scaling
the labels to fit.
An axis need only return the minimum and maximum labels when returning an estimate. If the label set is fairly static, without depending on the size of the axis being rendered on screen, an axis can return the entire label set from this function, and mark the estimate as accurate.
반환값AxisLabelSet — An Array of AxisLabel objects.
|
getLabels | () | 메서드 |
public function getLabels(minimumAxisLength:Number):AxisLabelSet
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Gets the labels text that is rendered. When Flex calls this method, the axis has already determined the minimum length of the label.
매개 변수
minimumAxisLength:Number — The minimum length of the axis, in pixels.
The axis can be longer than this value, but not shorter.
|
AxisLabelSet — An array of AxisLabel objects.
|
invertTransform | () | 메서드 |
public function invertTransform(value:Number):Object
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Maps a position along the axis back to a numeric data value.
매개 변수
value:Number — The bound of the axis.
This parameter should be between 0 and 1,
with 0 representing the minimum bound of the axis, and 1 the maximum.
|
Object — An object containing the transformed value.
|
mapCache | () | 메서드 |
public function mapCache(cache:Array, field:String, convertedField:String, indexValues:Boolean = false):void
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Converts a set of values of arbitrary type to a set of numbers that can be transformed into screen coordinates.
매개 변수
cache:Array — An Array of objects where converted values
are read from and stored.
| |
field:String — The field of the objects in the cache Array
containing the pre-converted values.
| |
convertedField:String — The field of the objects in the cache Array
where converted values should be stored.
| |
indexValues:Boolean (default = false ) — This parameter is true if the values being mapped
are index values, and false if they are natural data values.
|
preferDropLabels | () | 메서드 |
public function preferDropLabels():Boolean
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Determines how the axis handles overlapping labels.
Typically, numeric ranges return true
,
while discrete value-based ranges do not.
You can can override this property by setting it directly on the axis.
Boolean — true if labels can be dropped without loss of data;
otherwise, false .
|
reduceLabels | () | 메서드 |
public function reduceLabels(intervalStart:AxisLabel, intervalEnd:AxisLabel):AxisLabelSet
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Invoked when an AxisRenderer is unable to cleanly render the labels without overlap, and would like the Axis object to reduce the set of labels. The method is passed the two labels that are overlapping.
매개 변수
intervalStart:AxisLabel — The start of the interval where labels overlap.
| |
intervalEnd:AxisLabel — The end of the interval where labels overlap.
|
AxisLabelSet — A new label set that resolves the overlap by reducing
the number of labels.
|
transformCache | () | 메서드 |
public function transformCache(cache:Array, field:String, convertedField:String):void
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Maps a set of values from data space to screen space.
매개 변수
cache:Array — An Array of objects where mapped values
are read from and stored.
| |
field:String — The field of the objects in the cache Array
containing the pre-mapped values.
| |
convertedField:String — The field of the objects in the cache Array
where mapped values should be stored.
|
update | () | 메서드 |
public function update():void
언어 버전: | ActionScript 3.0 |
제품 버전: | Flex 3 |
런타임 버전: | Flash Player 9, AIR 1.1 |
Updates the chart. This can be called multiple times per frame.
<?xml version="1.0"?> <!-- Simple example to demonstrate the HLOCChart control. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; [Bindable] private var stockDataAC:ArrayCollection = new ArrayCollection( [ { Date: "25-Jul", Open: 40.55, High: 40.75, Low: 40.24, Close:40.31}, { Date: "26-Jul", Open: 40.15, High: 40.78, Low: 39.97, Close:40.34}, { Date: "27-Jul", Open: 40.38, High: 40.66, Low: 40, Close:40.63}, { Date: "28-Jul", Open: 40.49, High: 40.99, Low: 40.3, Close:40.98}, { Date: "29-Jul", Open: 40.13, High: 40.4, Low: 39.65, Close:39.95}, { Date: "1-Aug", Open: 39.00, High: 39.50, Low: 38.7, Close:38.6}, { Date: "2-Aug", Open: 38.68, High: 39.34, Low: 37.75, Close:38.84}, { Date: "3-Aug", Open: 38.76, High: 38.76, Low: 38.03, Close:38.12}, { Date: "4-Aug", Open: 37.98, High: 37.98, Low: 36.56, Close:36.69}, { Date: "5-Aug", Open: 36.61, High: 37, Low: 36.48, Close:36.86} ]); ]]> </fx:Script> <fx:Declarations> <!-- Define custom Stroke for the wick and ticks. --> <mx:SolidColorStroke id="s1" color="0x000000" weight="5" joints="bevel" caps="square"/> </fx:Declarations> <mx:Panel title="HLOCChart Control Example" height="100%" width="100%"> <mx:HLOCChart id="hlocchart" height="100%" width="100%" paddingRight="5" paddingLeft="5" showDataTips="true" dataProvider="{stockDataAC}"> <mx:verticalAxis> <mx:LinearAxis id="vaxis" baseAtZero="false" title="Price"/> </mx:verticalAxis> <mx:horizontalAxis> <mx:CategoryAxis id="haxis" categoryField="Date" title="Date"/> </mx:horizontalAxis> <mx:horizontalAxisRenderers> <mx:AxisRenderer axis="{haxis}" canDropLabels="true"/> </mx:horizontalAxisRenderers> <mx:series> <mx:HLOCSeries openField="Open" highField="High" lowField="Low" closeField="Close" stroke="{s1}" openTickStroke="{s1}" closeTickStroke="{s1}" openTickLength="7" closeTickLength="7" /> </mx:series> </mx:HLOCChart> </mx:Panel> </s:Application>
Tue Jun 12 2018, 03:17 PM Z