0
我Flex中有一個數組集合,它看起來像: -的Flex PieSeries將組由標籤
public var expenses:ArrayCollection = new ArrayCollection([
{ Expense:"Taxes", Amount:2000 },
{ Expense:"Rent", Amount:1000 },
{ Expense:"Taxes", Amount:1000 },
{ Expense:"Food", Amount:1000 },
{ Expense:"Food", Amount:200 } ]);
現在PieSeries將有數據提供程序設置爲「費用」與現場指向「金額」和labelField屬性指向「花費'。這裏的問題是,我得到了5個餅圖切片而不是3個(當我們認爲PieSeries會將dataProvider中存在的任何內容轉儲到UI時,這是正確的)。
有沒有一種方法可以將這些數據分組?也許通過修改dataFunction和labelFunction? 我期望的是3片顯示價值淨收益 - {稅:3000,出租:1000,食品:1200} - 類似於GROUP BY標籤?
嗨克里斯,感謝您的意見。我確實看到了這個問題,但它使事情變得非常複雜。我基本上是在繪製與餅圖旁邊顯示的數據網格相同的數據。兩次提取相同的數據將是一個矯枉過正的問題。我能想到的另一個低效率的方法是迭代整個數據集,計算標籤存在的時間。無論如何,我可以創建一個自定義渲染器或類似的東西,以便餅圖可以將具有相同標籤的所有值組合在一起? – Rohan
我不認爲迭代集合並創建新的dataprovider效率不高,但這當然取決於原始集合的大小。我會試着說實話。自定義渲染器會帶您另一條複雜的路線。 –