具有多个系列的Flex条形图标签功能?

时间:2009-07-14 19:28:22

标签: flex charts series

我有一个Flex条形图,其中有两个数据系列的数据系列。该系列称为RequiredFunding和ApprovedFunding,因此它们彼此相邻绘制。我遇到的问题是尝试格式化Funding轴上的标签功能。我有几千美元的显示,需要用美元符号和逗号格式化(我已经有了这个功能)。

当我尝试将标签函数应用于水平轴时,我返回MoneyFormatter.format(labelValue),这是我的应用程序范围的货币格式化程序,但这不起作用,因为dataProvider中有两个不同的金额...有labelValue.RequiredFunding和labelValue.ApprovedFunding。

希望我能正确地解释一下......有没有人有任何想法?

非常感谢,

-Matt

编辑:我担心我没有足够清楚地解释这个问题!别担心。基本上,我想格式化我的底轴,目前说8000,16000,24000和32000,分别是$ 8,000,$ 16,000,$ 24,000和$ 32,000。但问题是,该轴不会超出RequiredFunding数量或ApprovedFunding数量......它会自动适应较大值......或者以某种方式将两个分组系列视为单个系列......我是不确定。例如,如果我将其设置为返回MoneyFormatter.format(RequiredFunding),它将正确格式化...但它只会为RequiredFunding数量设置标签(如$ 14,543,$ 2,543,$ 31,230)并且不会绘制任何一个条形图系列。我希望这能搞清楚。如果有必要,我可以上传一些屏幕上限。

2 个答案:

答案 0 :(得分:1)

我有这个并且它正在运作:

    <mx:CurrencyFormatter id="moneyFormatter" currencySymbol="$" thousandsSeparatorTo="," />
    <mx:BarChart dataProvider="{testData.Sample}">
        <mx:series>
            <mx:BarSeries yField="visitors"  />
            <mx:BarSeries yField="overhead" />
        </mx:series>
        <mx:horizontalAxis>
            <mx:CategoryAxis dataFunction="moneyFormat"/>
        </mx:horizontalAxis>
    </mx:BarChart>

moneyFormat功能:

private function moneyFormat(cat:Object, labelItem:Object):String{
       return moneyFormatter.format(labelItem.value);
}

我使用了一些我自己的测试数据,所以不介意奇怪的yFields。我希望这有帮助

答案 1 :(得分:0)

我不确定你想要什么。您可以使用labelValue.RequiredFunding之后调用MoneyFormatter.format(),然后再调用labelValue.ApprovedFunding吗?可能我做得不对