0

これは私の配列コレクションです

 [Bindable]private var Projects:ArrayCollection = new ArrayCollection( [
                { Department: "Software", TotalProjects: 73,Completed:30,Inprogress:30,Approved:13},
                { Department: "XML",TotalProjects: 50,Completed:20,Inprogress:20,Approved:10},
                { Department: "Publishing",TotalProjects: 25,Completed:5,Inprogress:10,Approved:10},
                { Department: "Indesign", TotalProjects: 70,Completed:30,Inprogress:30,Approved:10},
                { Department: "Imaging", TotalProjects: 42,Completed:30,Inprogress:10,Approved:2}]);

折れ線グラフの線系列:

<mx:series>


<mx:LineSeries id="cs1"
                                   yField="TotalProjects"
                                   xField="Department"
                                   displayName="TotalProjects">

                </mx:LineSeries>
                <mx:LineSeries id="cs2"
                               yField="Inprogress"
                               xField="Department"
                               displayName="Inprogress">

                </mx:LineSeries>
                <mx:LineSeries id="cs3"
                               yField="Completed"
                               xField="Department"
                               displayName="Completed">

                </mx:LineSeries>
                <mx:LineSeries id="cs4"
                               yField="Approved"
                               xField="Department"
                               displayName="Approved">

                </mx:LineSeries>


            </mx:series>

mx:LineSeries配列コレクションの値に応じて動的に作成するにはどうすればよいですか。現在、4行の系列しかありませんが、配列コレクションの値の変更に応じて、さらに表示する必要がある場合があります。例:配列コレクションにもう1つのステータスHoldProjectが追加された場合はどうなりますか?

4

1 に答える 1

2
var series:Array=[];
for (var prop:String in Projects[0])
    if (prop != "Department") {
        var ls:LineSeries=new LineSeries();
        ls.yField=prop;
        ls.xField="Department";
        s.displayName=prop;
        series.push(ls);
    }
myChart.series=series;

この場合、dataProviderの各アイテムには同じプロパティセットが必要です。

于 2011-10-11T06:38:29.987 に答える