0

ループを介して ArrayCollection を作成していますが、その後、この ArrayCollection を使用して折れ線グラフを作成したいと考えています。唯一の問題は、ArrayCollection に値しかなく、折れ線グラフの作成に使用されるキーワードがないことです。ArrayCollection にキーワードを追加するにはどうすればよいですか? または、キーワードなしで折れ線グラフを作成する方法はありますか?

配列コレクションを作成するコードは次のとおりです。

[Bindable] public var Graph_:ArrayCollection;

        public function populateArray():void {

        var Graph_:ArrayCollection = new ArrayCollection();

        for (var i:int=0; i<=500; i++){

            var depth_:Number = i*10;
            var pressure:Number = 100+i;
            Graph_.addItem([depth_,pressure]); 

            }
// I want to use it further in this way:

<mx:LineChart id="chart"
          dataProvider= "{Graph_}"
          showDataTips="true">

    <mx:horizontalAxis>
        <mx:CategoryAxis categoryField="Depth" />   
    </mx:horizontalAxis>

    <mx:series>
        <mx:LineSeries  yField="Pressure" form="curve" displayName="Pressure"/>
    </mx:series>

    </mx:LineChart>
4

1 に答える 1

0

これは@Brian Bishopがあなたに提案したことです:

public function populateArray():void {

    Graph_ = new ArrayCollection();
    for (var i:int=0; i<=500; i++) {

        var depth_:Number = i*10;
        var pressure:Number = 100+i;
        // add an object who's property names are "depth", "pressure"
        // use these names when configuring the axis/line series of the chart
        Graph_.addItem({ depth: depth_, pressure: pressure }); 
    }
}

にアイテムを追加するときArrayCollectionは、データを含む匿名オブジェクトとして追加します。これで、チャートにこれらの「キーワード」(プロパティ名) を使用するように指示できます。

注:この行も変更しました:Graph_ = new ArrayCollection();

あなたのコードはGraph_、関数内にのみ存在するローカル変数を使用していました。それは[Bindable] Graph_、クラスで定義した変数ではありませんでした。

于 2013-07-01T19:55:11.960 に答える